位置: IT常识 - 正文

vue项目实战经验,相关库的安装,继续完善(vuecli项目实战)

编辑:rootadmin
vue项目实战经验,相关库的安装,继续完善 前言

推荐整理分享vue项目实战经验,相关库的安装,继续完善(vuecli项目实战),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue做项目,一个完整的vue项目介绍,vue3项目实战,vue做项目,vue项目工作流程,vue实战项目例子,vue项目经验怎么写,vue项目经验怎么写,内容如对您有帮助,希望把文章链接给更多的朋友!

最近在系统学习vue3的项目实战,这里是对学习过程中的总结,包括一些库,框架的网站。

项目介绍

本项目基于Vue3 + ElementPlus + Vite实战开发商城后台管理系统,其中包括Vite的使用,Vue3全新的

node.js的搭建1.node官网下载

https://nodejs.org/zh-cn/

2.npm 淘宝镜像安装npm install -g cnpm --registry=https://registry.npm.taobao.orgcnpm -v //查看版本号vite项目搭建1.vite官网和介绍

http://www.vitejs.net/ Vite 需要 Node.js 版本 >= 12.0.0。,通过

npm init vite@latest //查看版本号2.创建vue3项目#npm 7+, 需要额外的双横线:npm init vite@latest my-vue-app -- --template vue#npm 6.xnpm init vite@latest my-vue-app --template vue

再按要求勾选相关需要, npm run dev 运行。

Element Plus UI库引入1. Element Plus网站

https://element-plus.gitee.io/zh-CN/ Element Plus 是用于vue3的element库,vue2是element-ui 注意一下

2.库安装npm install element-plus --save3.引入UI库文件

main.js文件

import { createApp } from 'vue'import './style.css'// 引入element依赖文件import ElementPlus from 'element-plus'import 'element-plus/dist/index.css'import App from './App.vue'const app = createApp(App)app.use(ElementPlus)app.mount('#app')windicss 框架1.网站vue项目实战经验,相关库的安装,继续完善(vuecli项目实战)

https://windicss.org/

2.安装npm i -D vite-plugin-windicss windicss3.Vite 配置中添加插件 ,和Vite 入口文件中导入

vite.config.js 文件

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

main.js 文件

import { createApp } from 'vue'import './style.css'// 引入element依赖文件import ElementPlus from 'element-plus'import 'element-plus/dist/index.css'import App from './App.vue'const app = createApp(App)app.use(ElementPlus)// 引入windi.cssimport 'virtual:windi.css'app.mount('#app')vue-router 路由1.网站

https://router.vuejs.org/zh/

2.安装npm install vue-router@4全局配置

router/index.js 文件

//1. 导入vue-router相关函数import { createRouter, createWebHashHistory } from "vue-router"// 2.路由规则const routes = [{path:"路由地址",name:"路由名称",component:组件名称}]// 3.路由对象实例化const router = createRouter({history: createWebHashHistory(),routes})// 暴露导出export default router

main.js 文件

import { createApp } from 'vue'import './style.css'// 引入element依赖文件import ElementPlus from 'element-plus'import 'element-plus/dist/index.css'// 导入router配置文件import router from "./router"import App from './App.vue'const app = createApp(App)// 挂载文件app.use(ElementPlus)app.use(router)// 引入windi.cssimport 'virtual:windi.css'app.mount('#app')路径别名设置

vite.config.js 文件

import vue from '@vitejs/plugin-vue'import { defineConfig } from 'vite'import WindiCSS from 'vite-plugin-windicss'// 1.导入node的path路径模块import path from "path"// https://vitejs.dev/config/export default defineConfig({resolve: {alias: {// 配置别名"~": path.resolve(__dirname, "src")}},plugins: [vue(), WindiCSS()]})添加404页面

建好一个404页面组件,再路由index.js里

//1. 导入vue-router相关函数import { createRouter, createWebHashHistory } from "vue-router"// 导入页面组件import Home from "~/views/Home.vue"import NotFound from "~/views/Page404.vue"// 2.路由规则const routes = [{path: "/",redirect: "/home"},{path: "/home",component: Home},// 404页面设置{path: '/:pathMatch(.*)*',name: 'NotFound',component: NotFound},]// 3.路由对象实例化const router = createRouter({history: createWebHashHistory(),routes})// 暴露导出export default router登录页面布局1.创建Login.vue组件并配置路由

配置路由

//1. 导入vue-router相关函数import { createRouter, createWebHashHistory } from "vue-router"// 导入页面组件import Home from "~/views/Home.vue"import Login from "~/views/Login.vue"import NotFound from "~/views/Page404.vue"// 2.路由规则const routes = [{path: "/",redirect: "/home"},{path: "/home",name: Home,component: Home},{path: "/login",name: Login,component: Login},{path: '/:pathMatch(.*)*',name: 'NotFound',component: NotFound},]// 3.路由对象实例化const router = createRouter({history: createWebHashHistory(),routes})// 暴露导出export default router

Login.vue组件布局源代码

<!-- 视图层 --><template><el-row class="min-h-screen bg-indigo-500"><el-col :span="16" class="flex items-center justify-center"><div><div class="font-bold text-5xl text-light-50 mb-4">欢迎光临</div><div class="text-gray-200 text-sm">《vue3商城后台管理系统》</div><el-icon><Lock /></el-icon></div></el-col><el-col:span="8"class="bg-light-50 flex items-center justify-center flex-col"><h2 class="font-bold text-3xl text-gray-800">欢迎回来</h2><divclass="flex items-center justify-center my-5 text-gray-300space-x-2"><span class="h-[1px] w-16 bg-gray-200"></span><span>账号密码登录</span><span class="h-[1px] w-16 bg-gray-200"></span></div><el-form :model="form" class="w-[250px]"><el-form-item><el-input v-model="form.username" placeholder="请输入用户名"><template #prefix><el-icon><UserFilled /></el-icon></template></el-input></el-form-item><el-form-item><el-input v-model="form.password" placeholder="请输入密码"><template #prefix><el-icon><Lock /></el-icon></template></el-input></el-form-item><el-form-item><el-buttonroundcolor="#626aef"class="w-[250px]"type="primary"@click="onSubmit">登 录</el-button>></el-form-item></el-form></el-col></el-row></template><!-- 逻辑层 --><script setup>import { reactive } from "vue";// 导入icon图标// import { Lock, UserFilled } from "@element-plus/icons-vue";// do not use same name with refconst form = reactive({username: "",password: "",});const onSubmit = () => {console.log("submit!");};</script><!-- 样式层 --><style lang="" scoped></style>2.表单验证

:rules=“rules” 绑定规则 ref=“formRef” 获取el-form表单组件实例对象 prop=“username” 关联指定对象 show-password 密码显示图标—–小眼睛

<el-form :rules="rules" ref="formRef" :model="form" class="w-[250px]"><el-form-item prop="username"><el-input v-model="form.username" placeholder="请输入用户名"><template #prefix><el-icon><UserFilled /></el-icon></template></el-input></el-form-item><el-form-item prop="password"><el-inputtype="password"v-model="form.password"placeholder="请输入密码"show-password><template #prefix><el-icon><Lock /></el-icon></template></el-input></el-form-item><el-form-item><el-buttonroundcolor="#626aef"class="w-[250px]"type="primary"@click="onSubmit">登 录</el-button></el-form-item></el-form>import { reactive, ref } from "vue";const form = reactive({username: "",password: "",});// 验证规则const rules = {username: [{required: true,message: "用户名不能为空",trigger: "blur",},],password: [{required: true,message: "密码不能为空",trigger: "blur",},],};// 获取form元素节点对象const formRef = ref(null);const onSubmit = () => {formRef.value.validate((valid) => {if (!valid) {return false;}console.log("验证通过");});};2.表单前后端数据交互
本文链接地址:https://www.jiuchutong.com/zhishi/299682.html 转载请保留说明!

上一篇:前端开发中常见的浏览器兼容性问题及解决方案(前端开发常见的兼容性问题)

下一篇:vue路由跳转取消上个页面的请求(vue关闭路由)

  • 原谅我曾经想过你给的我自己歌名(原谅我曾经想过你给的)(原谅我曾经想过你的给的是我的什么意思)

    原谅我曾经想过你给的我自己歌名(原谅我曾经想过你给的)(原谅我曾经想过你的给的是我的什么意思)

  • 苹果13pro是曲面屏吗(苹果13promax曲面屏)

    苹果13pro是曲面屏吗(苹果13promax曲面屏)

  • QQ群怎么打卡(qq群怎么打卡签到领分)

    QQ群怎么打卡(qq群怎么打卡签到领分)

  • 50定焦拍全身要多远(50定焦镜头拍视频)

    50定焦拍全身要多远(50定焦镜头拍视频)

  • 快手的铁粉标志怎么弄(快手铁粉标识)

    快手的铁粉标志怎么弄(快手铁粉标识)

  • 闲鱼拍下最迟发货时间(闲鱼拍下最晚什么时候发货)

    闲鱼拍下最迟发货时间(闲鱼拍下最晚什么时候发货)

  • 华为5.5寸手机有哪些(华为手机5.5英寸手机有哪些)

    华为5.5寸手机有哪些(华为手机5.5英寸手机有哪些)

  • 门禁卡复制成功不能用怎么解决(门禁卡复制成功数据一致但打不开门)

    门禁卡复制成功不能用怎么解决(门禁卡复制成功数据一致但打不开门)

  • 苹果换机政策(苹果换机政策换的是新机器么)

    苹果换机政策(苹果换机政策换的是新机器么)

  • 荣耀30防水级别(荣耀30防水防尘级别是多少)

    荣耀30防水级别(荣耀30防水防尘级别是多少)

  • 被对方拒收是拉黑了吗(被对方拒收是拉黑还是删除)

    被对方拒收是拉黑了吗(被对方拒收是拉黑还是删除)

  • 钉钉拉黑对方会提示吗(钉钉里拉黑后对方知道么)

    钉钉拉黑对方会提示吗(钉钉里拉黑后对方知道么)

  • 什么是计算机接入网络的接口设备(什么是计算机接入网络)

    什么是计算机接入网络的接口设备(什么是计算机接入网络)

  • 内存条cl值是什么意思(内存条cl值是时序吗)

    内存条cl值是什么意思(内存条cl值是时序吗)

  • dtse9u盘是什么牌子的(u盘dts和dtkn有什么区别)

    dtse9u盘是什么牌子的(u盘dts和dtkn有什么区别)

  • 头灯电池一般是多少伏(头灯电池是几号)

    头灯电池一般是多少伏(头灯电池是几号)

  • 华为p30的OTG在哪

    华为p30的OTG在哪

  • 优酷是腾讯旗下的吗(优酷是腾讯旗下的软件吗)

    优酷是腾讯旗下的吗(优酷是腾讯旗下的软件吗)

  • 手机接不了电话但可以打出去(手机接不了电话也打不出去,能用流量)

    手机接不了电话但可以打出去(手机接不了电话也打不出去,能用流量)

  • 苹果u2机器是什么意思(苹果u2机是什么手机)

    苹果u2机器是什么意思(苹果u2机是什么手机)

  • tp-link路由器设置管理员密码是什么(tplink路由器设置网址密码)

    tp-link路由器设置管理员密码是什么(tplink路由器设置网址密码)

  • 电脑如何开热点给手机使用(电脑如何开热点让手机连wifi)

    电脑如何开热点给手机使用(电脑如何开热点让手机连wifi)

  • 135定焦适合拍什么(135mm定焦镜头适合拍什么)

    135定焦适合拍什么(135mm定焦镜头适合拍什么)

  • 小米手环4怎么添加公交卡(小米手环4怎么绑定手机)

    小米手环4怎么添加公交卡(小米手环4怎么绑定手机)

  • 共享单车停车点满了怎么办(附近哪里有共享单车停车点)

    共享单车停车点满了怎么办(附近哪里有共享单车停车点)

  • 小爱能控制什么(小爱同学可以控制智能家居吗)

    小爱能控制什么(小爱同学可以控制智能家居吗)

  • 微信小程序:用户微信登录流程(附:流程图+源码)(微信小程序用电脑怎么打开)

    微信小程序:用户微信登录流程(附:流程图+源码)(微信小程序用电脑怎么打开)

  • 房地产增值税预缴规定
  • 北京市增值税发票查验平台
  • 计税价格是什么税
  • 为什么要交税钱
  • 期末账项调整的基础是
  • 增值税多提了怎么处理
  • 小规模一直零申报也要工商申报吗?
  • 外账成本倒推表格
  • 合同印花税用不用计提
  • 营改增前甲供材料如何纳税
  • 银行存款利息的计算
  • 制造业交新型墙体材料专项基金款分录
  • 进口材料支付的关税
  • 应纳税额计算举例
  • 代扣代缴税种有几个
  • 三证合一后怎么看税号
  • 其他收益纳税
  • 特殊金融机构有哪些
  • 现金流量表季报还是年报
  • Proxy error: Could not proxy request 解决方法
  • windows10如何开机直接进入桌面
  • PHP验证信用卡卡号是否正确函数
  • php实现文件上传
  • searchnav.exe - searchnav是什么进程 有什么用
  • 拆迁货币什么意思
  • 对公转账需要填写开户行吗
  • 失业保险稳岗补贴是什么意思
  • 马格达拉之战
  • 土地增值税案例题库
  • 欧罗巴山脉自驾
  • php imagefill
  • 残疾人保障金工资总额包括年终奖吗
  • yolov5使用
  • php guzzle 异步
  • 对数前面有符号怎么计算
  • 报销人和收款人不一致
  • 募股方案
  • 关税对企业有什么影响
  • 亏损企业研发费用可以加计么
  • 个体户跨季领取发票流程
  • 增值税专票开户行账号错了,可以抵扣吗
  • 进项税抵扣的分录怎么做
  • 畜类生产性生物资产计算折旧的最低年限
  • 固定资产变动方式名称
  • 一般纳税人进销不符怎么办
  • 收到的货品与实物不符
  • 长期待摊费用装修费分摊分录
  • 企业的固定资产包括哪些内容
  • 房租增值税专用发票可以抵扣吗
  • 员工异地工作
  • 支付宝电子发票怎么开
  • 银行日记账的登记依据有哪些
  • 实收资本怎么确认入账
  • 以前年度应收账款无法收回
  • 银行对账单和银行流水的区别
  • 明细分类账怎么做表格
  • 医院会计怎么做账
  • 结转未交增值税会计处理
  • mysql安装与配置详细教程
  • sqlserver r服务
  • 联想s5s531笔记本M2
  • win8升级win10系统会卡吗
  • 下载微信
  • win8系统如何分区
  • xp系统无法更换桌面壁纸
  • windows xp密码忘记怎样解锁
  • centos 网络监控
  • ubuntu系统升级到18
  • mac os 删除
  • Mac显示桌面快捷键
  • 英文xp系统中文语言包
  • win8任务栏设置在哪
  • 在Linux命令行中快速删除光标前的快捷键是什么?
  • 微信小程序吸血鬼 豹女
  • python里的迭代器
  • ajax按顺序执行
  • 基于专业性的家校双向互动,需要家长的学校教育参与
  • 什么是解放思想?请阐述解放思想和实事求是之间的关系
  • 什么叫发票信息对比
  • 2021年房产税收新政
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设