位置: 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关闭路由)

  • 网店推广的十大方法(网店推广有哪些常见手段)

    网店推广的十大方法(网店推广有哪些常见手段)

  • 广告营销技巧,未来广告营销的三大关键(广告营销手法)

    广告营销技巧,未来广告营销的三大关键(广告营销手法)

  • 苹果背景音怎么定时(苹果背景音怎么弄)

    苹果背景音怎么定时(苹果背景音怎么弄)

  • 小米妙播怎么用(小米妙播怎么用第三方app)

    小米妙播怎么用(小米妙播怎么用第三方app)

  • 笔记本的无线网卡在哪(笔记本的无线网卡可以给台式用吗)

    笔记本的无线网卡在哪(笔记本的无线网卡可以给台式用吗)

  • 插了OTG但设备没显示(插了OTG但设备没显示vivo)

    插了OTG但设备没显示(插了OTG但设备没显示vivo)

  • 抖音橱窗可以卖自己的产品吗(抖音橱窗可以卖其他人小店里的产品吗)

    抖音橱窗可以卖自己的产品吗(抖音橱窗可以卖其他人小店里的产品吗)

  • 抖音上线能隐身吗(抖音上线能隐身吗怎么设置)

    抖音上线能隐身吗(抖音上线能隐身吗怎么设置)

  • 华为手机号被别人注册了怎么办(华为手机号被别人注册了而且身份证不是)

    华为手机号被别人注册了怎么办(华为手机号被别人注册了而且身份证不是)

  • 手机干什么最费电(手机干什么费流量快)

    手机干什么最费电(手机干什么费流量快)

  • 微信拉黑是不是搜索用户名不存在了(微信拉黑是不是看不到朋友圈)

    微信拉黑是不是搜索用户名不存在了(微信拉黑是不是看不到朋友圈)

  • id全称是什么(id是什么)

    id全称是什么(id是什么)

  • poe交换机和普通交换机有什么区别(poe交换机和普通交换机能混接吗)

    poe交换机和普通交换机有什么区别(poe交换机和普通交换机能混接吗)

  • 苹果xr怎么下载东西(苹果XR怎么下载超过200m)

    苹果xr怎么下载东西(苹果XR怎么下载超过200m)

  • 电脑死机了按哪个键(电脑死机了按哪个快捷键退出)

    电脑死机了按哪个键(电脑死机了按哪个快捷键退出)

  • 如何恢复微信聊天记录(如何恢复微信聊天记录照片)

    如何恢复微信聊天记录(如何恢复微信聊天记录照片)

  • 脚注编号21怎么加圆圈(脚注编号怎么加圆圈)

    脚注编号21怎么加圆圈(脚注编号怎么加圆圈)

  • 登录Windows系统之后看到的主屏幕区域是(电脑windows登陆)

    登录Windows系统之后看到的主屏幕区域是(电脑windows登陆)

  • i58代和9代的区别(八代i5和9代i5)

    i58代和9代的区别(八代i5和9代i5)

  • 苹果手机抬头唤醒在哪(苹果手机抬头唤醒功能失效怎么办)

    苹果手机抬头唤醒在哪(苹果手机抬头唤醒功能失效怎么办)

  • Unity存储路径具体位置整理(Win+Android+ios)(unity默认存储路径)

    Unity存储路径具体位置整理(Win+Android+ios)(unity默认存储路径)

  • “小三”英语怎么说?难道要说“little three”?!(小三用英语怎么写?)

    “小三”英语怎么说?难道要说“little three”?!(小三用英语怎么写?)

  • 协会会费如何做分录
  • 移动发票抬头个人税号公司能报销吗
  • 支付所得税属于筹资活动吗
  • 企业支付宝买东西
  • 资产几百亿真的有那么多钱吗?
  • 融资租赁承租方增值税处理
  • 汇总记账凭证会计核算组织形式适用于
  • 账目不清什么意思
  • 提取法定盈余公积金会计分录
  • 预付账款是付没付钱
  • 经营租赁是主营业务收入吗
  • 房地产预缴土地增值税的账务处理
  • 即征即退和一般项目进项税比例怎样算出进项税额
  • 何为提租补贴
  • 工资不到3500用交个税吗
  • 公司税务注销了还有风险吗
  • 2018年高新技术企业所得税
  • 出纳可以做记账表格吗
  • 记账凭证汇总表和汇总记账凭证有什么区别
  • 本年利润余额负数表示什么意思
  • 增值税的征收范围包括在中华人民共和国境内
  • Windows11怎么免费升级专业版
  • ghost后分区没有了
  • kali渗透工具安装
  • linux安装tk
  • 加班费如何做账
  • PHP:oci_field_name()的用法_Oracle函数
  • 蔚蓝的海怎么样
  • 事业单位自营
  • 缴纳房产税需要扣除折旧吗
  • 蒙特利尔 攻略
  • 金蝶迷你版财务软件报价
  • php自动编号
  • 微信小程序做ppt
  • php获取访问者mac地址
  • vit详解
  • springboot比spring做了哪些改进
  • ai绘画网站
  • 收到借款利息收入的会计分录怎么做账
  • 织梦使用教程
  • 织梦使用手册
  • 支付股息如何做账
  • sqlserver怎么把数据库导出来
  • react 16新特性
  • 施工企业预缴税款
  • 哪些福利不需要交个税
  • 个人所得税的不同税率
  • 行政事业单位职工工伤有哪些待遇
  • 劳务公司的账务处理会计分录
  • 夏天单位发防暑茶
  • 进货没开票销售开票了
  • 事业单位大型修缮与办公用房维修费区别
  • 产品研发专利
  • 会计事务所给的发票
  • 取得航空公司收票的票据
  • 管理费用收入缴纳增值税吗
  • 期初与年初有什么区别
  • 工资代扣工会会费协议
  • 企业购买加油卡出售怎么做账
  • win8不好吗
  • windows英文字体
  • rsync windows linux
  • linux系统chmod用法
  • linker command failed with exit code 1 (use -v to see invocation)
  • excel初始化时出错
  • linux 常用命令大全及其详解
  • css对象
  • nodejs获取当前路径
  • jquery控制display属性
  • 性能优化是什么
  • ubuntu下安装win10
  • js function函数
  • 变更税务局三方协议
  • 道路运输业属于工贸行业吗
  • python excel库哪个好
  • 按时交纳党费
  • 国家税务局广东省电子税务局下载
  • 拉萨税务局拉巴卓玛
  • 贵州省高新区属于哪个县
  • 古代怎样征兵
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设