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

  • 小米手机如何安装未知应用(小米手机如何安装google play服务)

    小米手机如何安装未知应用(小米手机如何安装google play服务)

  • 小米12pro防水吗(小米12pro防水吗,防多久)

    小米12pro防水吗(小米12pro防水吗,防多久)

  • Redmi K30 Pro支持的WLAN有哪些(RedmiK30Pro支持蓝牙HiFi吗)

    Redmi K30 Pro支持的WLAN有哪些(RedmiK30Pro支持蓝牙HiFi吗)

  • 华为荣耀微信如何改成白色主题(华为荣耀微信如何设置红包来了的提醒声音)

    华为荣耀微信如何改成白色主题(华为荣耀微信如何设置红包来了的提醒声音)

  • 苹果11点屏幕就会自动亮吗(苹果11屏幕就显示苹果标怎么回事)

    苹果11点屏幕就会自动亮吗(苹果11屏幕就显示苹果标怎么回事)

  • 苹果se和se2一样大吗(苹果se和se2一样吗)

    苹果se和se2一样大吗(苹果se和se2一样吗)

  • reno4屏幕多大(oppo reno4手机参数)

    reno4屏幕多大(oppo reno4手机参数)

  • 苹果键盘怎么滑动打字(苹果键盘怎么滑动)

    苹果键盘怎么滑动打字(苹果键盘怎么滑动)

  • 买家号违规多久能健康(买家号违规多久能恢复)

    买家号违规多久能健康(买家号违规多久能恢复)

  • 苹果手机共享相簿可以关闭吗(苹果手机共享相册别人能看到吗)

    苹果手机共享相簿可以关闭吗(苹果手机共享相册别人能看到吗)

  • qq的屏幕分享是什么(qq屏幕分享有风险吗)

    qq的屏幕分享是什么(qq屏幕分享有风险吗)

  • qq被别人举报了,被加不了好友怎么办(QQ被别人举报了能知道是谁吗)

    qq被别人举报了,被加不了好友怎么办(QQ被别人举报了能知道是谁吗)

  • 耳机麦克风在哪(耳机麦克风在哪个位置)

    耳机麦克风在哪(耳机麦克风在哪个位置)

  • zjxm的格式用什么打开(zjxm文件)

    zjxm的格式用什么打开(zjxm文件)

  • 0x0000001a蓝屏代码是什么意思(0x00000021a蓝屏)

    0x0000001a蓝屏代码是什么意思(0x00000021a蓝屏)

  • 华为荣耀9x有面部解锁吗(荣耀9x有面部解锁功能吗)

    华为荣耀9x有面部解锁吗(荣耀9x有面部解锁功能吗)

  • 今日头条封禁如何申诉(今日头条封禁如何起诉)

    今日头条封禁如何申诉(今日头条封禁如何起诉)

  • 手机怎么设置字带拼音(手机怎么设置字体上面有拼音)

    手机怎么设置字带拼音(手机怎么设置字体上面有拼音)

  • 手机飞行模式有辐射吗(手机飞行模式有wifi可以用微信吗)

    手机飞行模式有辐射吗(手机飞行模式有wifi可以用微信吗)

  • 如何进入快手个人主页(怎么进入快手主页面)

    如何进入快手个人主页(怎么进入快手主页面)

  • 途牛旅游如何分期付款(途牛旅游分期怎么样)

    途牛旅游如何分期付款(途牛旅游分期怎么样)

  • 网购iphone注意什么 网购iphone6s怎么验货(网购iphone注意什么)

    网购iphone注意什么 网购iphone6s怎么验货(网购iphone注意什么)

  • Apache.exe是什么文件的进程 Apache进程信息查询(apache是什么文件)

    Apache.exe是什么文件的进程 Apache进程信息查询(apache是什么文件)

  • resetFields重置初始值不生效的原因(reset fields)

    resetFields重置初始值不生效的原因(reset fields)

  • 税后债务资本成本计算公式 中级会计
  • 个所税包括什么
  • 企业所得税是什么意思大白话
  • 驾驶员培训服务税率
  • 购买财务软件如何做凭证
  • 事业单位补发
  • 利润表中财务费用为负数是什么意思
  • 利润分配未分配利润借贷方表示什么
  • 开票软件找不到已开发票
  • 分公司非独立核算是什么意思
  • 房地产自有资金投入
  • 会计凭证 借贷
  • 企业购房税费政策
  • 管家婆进销存软件免费版
  • 销售公司车辆如何填报销项税
  • 自己开发app能享受医保吗
  • 生产成本的明细账怎么登记
  • 应收账款处置损益
  • 购货方申请红字信息表,销售方不开会怎么样
  • 固定资产进项税的账务处理
  • 去税局代开增值税专票需要什么资料?
  • 完税证明可以作为发票吗
  • 企业网银使用
  • 企业所得税佣金扣除规定
  • 供应商把价格算错了怎么办
  • 企业公户转别的公司公户他不给开发票怎么操作?
  • 银行代扣社保费
  • 个人所得税申报截止时间
  • 退还工会经费会退回吗
  • 鸿蒙壁纸怎么设置滚动
  • windows11怎么设置我的电脑
  • 腾达路由器管理员密码
  • 贴现利息会计处理
  • fsmb32.exe是什么进程 作用是什么 fsmb32进程查询
  • 专利权的期限是指专利权的实际有效期限
  • php iswriteable
  • 偏食和挑食会有什么不良后果?
  • 开具增值税专用发票和普通发票的区别
  • 百慕大玛丽号
  • laravel artisan命令
  • 承兑汇票无法兑付
  • 管理费用科目核算的内容
  • 开办费计入哪个会计科目
  • 会计学中资本的定义
  • short int、long、float、double使用问题说明
  • 通货膨胀率怎么求
  • mysql修改表结构的关键字
  • 固定资产大修理和更新改造的区别
  • 物业管理费发票备注栏要求
  • 企业取得的财政补贴是否缴纳增值税
  • 营改增后增值税增加了什么征收范围
  • 委外研发费用如何入账
  • 存货科目计算公式是什么
  • 营改增后众筹融资业务的会计处理分析?
  • 认证超过限制什么意思
  • 测绘费计入什么明细科目
  • 无发票入账违反什么规定
  • 分支机构属于小型微利企业吗?
  • 卖掉公司旧办公用品怎么入账
  • 收到现金货款存入银行会计分录
  • 营改增后建筑业开票规定
  • 在window中
  • 加入跨子网路由什么协议
  • win10预览版21h2
  • centos配置yum
  • whagent.exe - whagent是什么进程
  • 电源管理器在哪
  • windows8运行窗口怎么打开
  • glClearBufferSubData
  • cocos2dx怎么用
  • nodejs获取ip
  • 如何设置div自适应宽度
  • ssh登录后自动执行命令
  • nodejs使用视频教程
  • unity3d怎么编程
  • js正则 \w
  • jQuery Validation Plugin验证插件手动验证
  • 让你略表情包
  • 国家河南税务局
  • 安徽营业执照网上怎么申请
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设