vue3-admin商品管理后台项目(创建vite项目以及配置)

news/2024/5/7 21:43:40/文章来源:https://blog.csdn.net/qq_45628733/article/details/127350589

秋招0 offer,继续充实自己,学学之前一直想做没做的vue-admin项目,目前是参考网易云课堂的一门课,后续会根据自己的项目学习进度一直更新下去。

首先是创建一个文件夹,然后作为我们项目的总文件夹,然后检查自己的node版本,我这使用的是较新的16.17版本。然后为了防止后面下载npm包的时候因为墙的原因卡住,所以我们进行换源。
查看当前源:

npm config get registry

更换源为国内镜像

npm config set registry=https://registry.npmmirror.com

更换成功后,在你创建的总文件夹下打开powershell,使用vite命令创建项目,比如我这里创建的项目名就叫shop-admin。

npm create vite@latest shop-admin -- --template vue

创建完成后,到这个项目目录下

cd shop-admin

然后经典:

npm install

然后运行项目:

npm run dev

在这里插入图片描述
到这里就是运行成功,界面挺好看的。
使用的编辑器是vscode,下载插件的话基本的是三个
Chinese汉化插件
volar
vue 3 snippets

Element plus
项目会使用到Element plus
element plus中文官网地址
所以根据官网教程,安装Element plus

npm install element-plus --save

然后编辑项目的main.js
直接使用下面代码进行覆盖

import { createApp } from 'vue'
import './style.css'
import App from './App.vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'const app = createApp(App)app.use(ElementPlus)app.mount('#app')

然后清除App.vue项目里的所有内容,只保留基本的三对标签,script,template,以及style,然后在element plus的组件里面随便找个组件的源代码粘贴到App.vue文件夹下,就行了。
在这里插入图片描述
然后原本的项目默认启动端口就会
在这里插入图片描述
所以到这里说明element plus导入成功能正常使用了

windi css
项目会用到windi css
windi css中文官网地址
安装相关包

npm i -D vite-plugin-windicss windicss

编辑vite.config.js

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import WindiCSS from 'vite-plugin-windicss'// https://vitejs.dev/config/
export default defineConfig({plugins: [vue(),WindiCSS()]
})

然后在main.js里面加入

import 'virtual:windi.css'

然后为了后续开发更友好,安装windicss插件
到此windi css就引入成功了

vue-router 4.0
项目会用到vue-router 4.0

npm install vue-router@4

然后再src目录下创建router文件夹,在其下面创建index.js编辑

import { createRouter, createWebHashHistory } from 'vue-router'const routes = []const router = createRouter({history:createWebHashHistory(),routes
})
export default router

在main.js里引入

import { createApp } from 'vue'
import './style.css'
import App from './App.vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import router from './router'const app = createApp(App)app.use(router)app.use(ElementPlus)
import 'virtual:windi.css'app.mount('#app')

当域名地址那出现了/#/的hash路由标志着vue-router引入成功
在这里插入图片描述

路由配置以及404页面配置
为了方便后续开发,给src配置一个别名
在vite.config.js进行编辑

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import WindiCSS from 'vite-plugin-windicss'import path from "path"// https://vitejs.dev/config/
export default defineConfig({resolve:{alias:{"~":path.resolve(__dirname,"src")}},plugins: [vue(),WindiCSS()]
})

然后在src下面创建pages,加入一个index.vue
在里面写上

<template><div>后台首页</div>
</template>

接着编辑router下的index.js

import { createRouter, createWebHashHistory } from 'vue-router'
import Index from '~/pages/index.vue'const routes = [{path:"/",component:Index
}]const router = createRouter({history:createWebHashHistory(),routes
})
export default router

然后来到App.vue下面,在template标签里面加上<router-view></router-view>
我们就会发现后台首页四个字显示在了页面上
在这里插入图片描述
意味着首页路由配置成功

再举个例子,比如说在pages下面再创建一个about.vue页面
配置router下面的index.js

import { createRouter, createWebHashHistory } from 'vue-router'
import Index from '~/pages/index.vue'
import About from '~/pages/about.vue'const routes = [{path:"/",component:Index
},{path:"/about",component:About
}]const router = createRouter({history:createWebHashHistory(),routes
})
export default router

然后在域名后面加上about
你就会发现about页面也能成功显示
在这里插入图片描述
这就是路由配置

404页面配置
在pages下面新建404.vue
然后编辑router下面的index.js

import { createRouter, createWebHashHistory } from 'vue-router'
import Index from '~/pages/index.vue'
import About from '~/pages/about.vue'
import NotFound from '~/pages/404.vue'const routes = [{path:"/",component:Index
},{path:"/about",component:About
},{// // 将匹配所有内容并将其放在 `$route.params.pathMatch` 下path: '/:pathMatch(.*)*', name: 'NotFound', component: NotFound
}]const router = createRouter({history:createWebHashHistory(),routes
})
export default router

然后美化404页面,使用的是element plus里面的一个警告组件

<template><div><el-resulticon="warning"title="404提示"sub-title="你找的页面走丢了哦"><template #extra><el-button type="primary" @click="$router.push('/')">回到首页</el-button></template></el-result></div>
</template>

然后随便输入一个不存在的页面,发现效果还是可以的,可以点击回到首页,这里使用的是router提供的$router.push(‘/’),/就是根路径下。
在这里插入图片描述
到这里404页面就配置完成了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_401989.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Debug初步了解

Debug调式程序 可以让代码逐行执行 查看代码执行的过程 调试程序中出现的bug 使用方式: 在行号的右边 鼠标左键单击 添加断点(每个方法的第一行 哪里有bug添加到哪里) 右键 选择Debug执行程序 程序就会停留在添加的第一个断点处 如: 这就是断点也是声明程序从这一步开始走 …

【ArcGIS微课1000例】0033:地图点状标记符号设计教程

地图符号是表示地图内容的基本手段,它由形状不同、大小不一、色彩有别的图形和文字组成。 地图符号是地图的语言,是一种图形语言。它与文字语言相比较,最大的特点是形象直观,一目了然。 本文讲解ArcGIS中点状符号设计方法。 文章目录 一、新建符号样式二、点符号设计1. 图根…

如何配置 uboot

前言 想为一款 SOC 开发 uboot&#xff0c;需要做如下事情&#xff1a; 下载 uboot 源码下载 SOC 对应的交叉编译工具&#xff0c;并在 host 机上配置好交叉编译环境配置 uboot编译 uboot烧录运行调试 下面以 LiCheePi Zero 开发板为例&#xff0c;从 0 到 1 演示完整示例。…

[附源码]Java计算机毕业设计SSM大学生兼职管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

LINUX之VLC4.0安装

环境准备 操作系统 ubuntu20.04 版本 VLC4.0.0 dev版本 工具准备 sudo apt-get install git build-essential pkg-config libtool automake autopoint gettext unzip安装第三方依赖库 下面的库只能多不能少&#xff0c;否则会出现各种错误 sudo apt-get install libxcb-shm0…

std::ref用法以及和引用区别

1、std::ref是什么&#xff1f; 关于c中的std::ref&#xff0c;std::ref在c11引入。本文通过讲解std::ref的常用方式&#xff0c;及剖析下std::ref内部实现&#xff0c;然后我们再进一步分析为什么使用std::ref。 ref是个函数模板&#xff1a; 用来构建一个reference_wrapper…

【区块链 | Solidity】跟我学 Solidity(6):工厂模式

如何在智能合约中使用clone工厂模式减少合约部署 gas。 原文 https://medium.com/better-programming/learn-solidity-the-factory-pattern-75d11c3e7d29 作者 Wissal haji欢迎来到学习 Solidity 系列的另一部分。在上一篇文章,我们讨论了如何从智能合约中创建另一个智能合约。…

泛型(1)

泛型的概述 泛型是一种未知的数据类型 当我们不知道使用什么数据类型的时候 可以使用泛型 泛型也可以看出是一个变量 用来接收数据类型 当我们创建集合是就确定泛型类型 使用泛型的好处 我们都知道集合中是可以存放任意对象的 只要把对象存储集合后 那么这时他们都会被提升成Ob…

无向图的双连通分量 DCC

双连通分量又称为重连通分量 分为 (1)边的双连通分量 EDCC &#xff1a;极大的不含桥的连通区域&#xff08;块&#xff09; 性质: 边的双连通分量不管删掉哪条边都是连通的 任意两点之间都包含两条不相交的路径&#xff08;充分必要&#xff09; (2)点的双连通分量 VDCC &…

电压掉电监测电路-三极管电路分析

电压掉电监测电路 电路在电压掉电时处于不稳定状态&#xff0c;经常需要采取一些应对措施。比如音响&#xff0c;内部的音频功率放大电路&#xff0c;在被突然拔掉电源时会发出刺耳的爆破音。 如果加入电压掉电监测电路&#xff0c;当监测到电压掉电时&#xff0c;输出一个信号…

MySQL目录结构与SQL基本概念

MySQL目录结构 1.MySQL安装目录配置文件 my.ini1、bin目录 用于放置一些可执行文件,如mysql.exe、mysqld.exe、mysqlshow.exe等。 2、data目录 用于放置一些日志文件以及数据库。 3、include目录 用于放置一些头文件,如:mysql.h、mysql_ername.h等。 4、lib目录 用于放置一系…

刷爆leetcode第七期 0018

刷爆leetcode第七期 0018题目编号0018 用队列实现栈第一步 定义结构体第二步 实现创建&#xff08;初始化&#xff09;第三步 删除接口函数第四步 返回头的值总结发现问题一发现问题二源码题目编号0018 用队列实现栈 请你仅使用两个队列实现一个后入先出&#xff08;LIFO&…

.NET周报【10月第1期 2022-10-11】

本周精选 继C#实现await/async无栈协程几年后,davidwrighton实现了.NET绿色线程(有栈协程)的原型 https://github.com/dotnet/runtimelab/pull/2002 .NET Runtimelab中绿色线程的原型实现的PR,在不久的将来,.NET开发者也可以方便的用上有栈协程,目前的启动一个有栈协程的AP…

docker:基础命令未完待续

基础操作 docker info #查看docker的基本信息docker version #查看docker版本信息一、镜像操作 1、搜索镜像 docker search nginx2、下载镜像 docker pull nginx#从仓库中下载镜像&#xff0c;若没有指定标签&#xff0c;则下载最新的版本&#xff0c;也就是标签为: la…

Python快速刷题网站——牛客网 数据分析篇(十五)

&#x1f466;&#x1f466;一个帅气的boy&#xff0c;你可以叫我Love And Program &#x1f5b1; ⌨个人主页&#xff1a;Love And Program的个人主页 &#x1f496;&#x1f496;如果对你有帮助的话希望三连&#x1f4a8;&#x1f4a8;支持一下博主 前言 本文将继续学习pan…

MySQL的行锁、间隙锁和临建锁

目录 行锁 间隙锁&临键锁 行锁 InnoDB实现了以下两种类型的行锁&#xff1a; 共享锁&#xff08;S&#xff09;&#xff1a;允许一个事务去读一行&#xff0c;阻止其他事务获得相同数据集的排它锁。 //共享锁和共享锁兼容&#xff0c;共享锁和排他锁互斥。 排他锁&#…

43 多个相同限定名类型同时存在导致的继承结构混乱的情况

前言 // 四刷天府绿道 呵呵 在前面文章中 jetty-runner:jar:9.3.20 和 tomcat-embed-core-8.5.29 的 JarScannerCallback 不兼容, 导致服务启动失败 提到了这样的一个问题 我们再看一下这里的 callback 的接口, jetty-runner 的这个对象里面是没有 void scan(Jar jar, Str…

【附源码】计算机毕业设计SSM民宿短租系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

JavaEE - Servlet(向服务器上传文件 Part类)

我们在需要向服务器上传文件时&#xff0c;在前端需要使用form表单&#xff0c;form表单需要使用特殊的类型 form-data 此时提交文件的时候&#xff0c;浏览器会把文件内容以form-data的格式构造到HTTP请求中&#xff0c;服务器就可以通过getPart获取了 需要注意&#xff1a;…

2.idea 标定相关

1.发现 VINS对于参数准确性的要求高于ORBSLAM。依据是相同的参数,ORBSLAM可以提供准确的定位结果,但是VINS很容易就会发散。在线标定外参很有效,经历过几次外参标定以后的外参给VINS可以获得很好的效果,但是不排除只是针对这个场景,随后测试如果效果好,考虑给ORBSLAM3增加…