vue3.0脚手架、路由、Element Plus安装案例:收录于Vue 3.0 后台管理系统案例
目录
环境配置
Vue 3.0 脚手架(Vite)安装
node版本查询与切换
创建一个vue应用
Vue Router安装
安装vue-router@4
配置路由
安装配置
展示路由
Element UI安装
安装element-plus
引入element-plus
使用element-plus
用户登录
环境配置
Vue 3.0 脚手架(Vite)安装
node版本查询与切换
首先,需要着重强调的是,您的电脑必须成功安装 Node.js ,并且建议安装的版本为 18.3 及以上。您能够通过在终端或者命令提示符中输入“node -v”这一指令,便捷地对已安装的 Node.js 版本进行查验。
倘若您期望列出当前系统中已安装的所有 Node.js 版本,此时可以巧妙地运用 nvm(也就是 Node Version Manager,节点版本管理器)所提供的相关命令,具体操作如下:
nvm ls 21.6.2 * 14.17.3 (Currently using 64-bit executable)
假如您打算使用 Node.js 的 21.6.2 版本,只需执行如下命令,nvm 便会将当前的 Node.js 版本无缝切换至 21.6.2 :
nvm use 21.6.2
Now using node v21.6.2 (64-bit)
关于当前安装的 Node.js 版本的详细信息,呈现情况如下所示:
node -v
v21.6.2
创建一个vue应用
创建的项目将采用基于 Vite 的构建设置,这一设置为我们运用 Vue 的单文件组件 (SFC) 提供了极大的便利和灵活性。首先,创建一个全新的项目目录,并在该目录中打开终端。接着,在命令行中运行“npm create vue@latest”命令。当您在安装 Vue 脚手架的过程中看到“Ok to proceed?”这一提示时,它通常是在询问您是否确定要继续当前的操作。在此情况下,您只需在键盘上输入“y”即可确认继续。
具体情况如下所示:
npm create vue@latest
Need to install the following packages:
create-vue@3.10.4
Ok to proceed? (y) y
接下来,将会安装并执行“create-vue”,它是由 Vue 官方所提供的项目脚手架工具。在这个过程中,您将会看到一系列诸如 TypeScript 和测试支持等可选功能的提示。倘若您对于是否开启某个特定功能不太确定,那么直接按下回车键选择“ No ”即可。
具体情况如下所示:
Vue.js - The Progressive JavaScript Framework √ Project name: ... QIANDUANJIDI-CMS
√ Package name: ... qianduanjidi-cms
√ Add TypeScript? ... No / Yes
√ Add JSX Support? ... No / Yes
√ Add Vue Router for Single Page Application development? ... No / Yes
√ Add Pinia for state management? ... No / Yes
√ Add Vitest for Unit Testing? ... No / Yes
√ Add an End-to-End Testing Solution? » No
√ Add ESLint for code quality? ... No / Yes
√ Add Vue DevTools 7 extension for debugging? (experimental) ... No / Yes Scaffolding project in D:\后台管理系统\QIANDUANJIDI-CMS... Done. Now run:
在项目成功创建之后,您需要按照以下步骤来安装依赖:
cd .\QIANDUANJIDI-CMS\
npm install added 1 package, removed 39 packages, changed 5 packages, and audited 32 packages in 3m 4 packages are looking for funding run `npm fund` for details found 0 vulnerabilities
最后,启动开发服务器:
npm run dev > qianduanjidi-cms@0.0.0 dev
> vite VITE v5.4.0 ready in 458 ms ➜ Local: http://localhost:5173/ ➜ Network: use --host to expose ➜ press h + enter to show help
备注:
在选择功能模块时,如果您对某个功能在未来的需求不太明确,建议先选择“ No ”。这样做可以避免引入不必要的复杂性,使项目保持相对简洁和易于管理。而在安装依赖的过程中,可能会由于网络状况不稳定或其他各种因素,导致一些包的安装出现问题。此时,您可以根据具体的错误提示信息,采取相应的、有针对性的解决措施,以确保项目的顺利推进。
运行结果:
Vue Router安装
安装vue-router@4
打开终端,切换至您的 Vue 项目所在的目录。接下来,使用如下命令来安装 Vue Router:
npm install vue-router@4
在安装过程中,显示如下信息:
added 2 packages, and audited 34 packages in 3s 5 packages are looking for funding run `npm fund` for details found 0 vulnerabilities
配置路由
创建一个名为 router.js 的文件,并在其中进行路由配置:
// 首先,从 vue-router 库中导入 createRouter 函数和 createWebHistory 函数
import { createRouter,createWebHistory } from 'vue-router'; // 然后,引入自定义的组件 Home 和 About
import Home from '@/components/home/index.vue';
import About from '@/components/about/index.vue'; // 接下来,定义路由规则
const routes = [ { path: '/home', component: Home }, { path: '/about', component: About }
]; // 随后,创建 router 实例
const router = createRouter({ history:createWebHistory(), routes
}); // 最后,将创建好的 router 实例导出,以便在其他模块中使用
export default router;
分析:
首先,从 vue-router 库中引入了两个极为关键的函数,分别是用于创建路由实例的 createRouter 函数以及用于设定路由历史模式的 createWebHistory 函数。这为后续的路由配置奠定了基础。
紧接着,导入了两个精心自定义的组件,即 Home 和 About。这两个组件在后续的路由配置过程中,将扮演重要角色,作为路由路径所对应的实际展示内容。
之后,通过 routes 数组清晰地定义了两条路由规则。每条路由规则都精准地涵盖了路径(path)以及与之紧密相对应的组件(component)。这确保了在不同的路径访问时,能够准确加载对应的组件,实现页面内容的切换和展示。
接着,借助 createRouter 函数成功创建了一个路由实例 router 。在创建过程中,将路由的历史模式配置为基于浏览器历史的 createWebHistory ,并将之前精心定义的路由规则数组 routes 准确无误地传递给了该路由实例。这使得路由实例能够根据规则进行页面的跳转和管理。
最后,将创建完成的路由实例 router 进行导出。如此一来,它便能够在其他模块中得以灵活使用。通常情况下,会在 Vue 应用的入口文件中进行注册和运用,从而实现整个应用的路由功能。
总的来讲,这段代码出色地完成了 Vue Router 的基础配置工作。不仅条理清晰地定义了路由规则,还精心创建出了能够在整个应用里稳定使用的路由实例,为应用的页面导航和内容展示提供了坚实的架构支持。
安装配置
在main.js中安装路由:
import { createApp } from 'vue'
import App from './App.vue'
import router from './router' createApp(App)
.use(router)
.mount('#app')
分析:
首先,从 vue 库中精准地导入了 createApp 函数。同时,从本地文件 './App.vue' 中引入了根组件 App,并从 './router' 成功载入了路由配置对象 router 。这为后续的应用创建和配置做好了充分的准备。
接下来,创建了一个 Vue 应用实例,并将 App 组件明智地设定为根组件。这确立了应用的基础架构和初始展示内容。
而后,向此应用实例巧妙地注册了路由功能。这一关键步骤使得应用能够依据事先定义好的路由规则,实现页面的流畅切换与精彩展示,为用户提供丰富的交互体验。
最后,将 Vue 应用挂载至页面中 id 为 app 的 DOM 元素上。这一操作确保了应用能够在指定的页面位置完美呈现,与用户进行有效的互动和交流。
总的来讲,这段代码实现了 Vue 应用的创建、路由的注册以及应用的挂载操作。通过这一系列精心设计的步骤,确保了整个 Vue 应用能够在指定的页面位置正常运转和交互,为用户带来优质的使用体验。
展示路由
在 App.vue 中使用 <router-view> 来展示当前路由的组件:
<template> <router-view></router-view>
</template> <script>
export default {};
</script> <style scoped>
</style>
分析:
在 <template> 标签内部,<router-view> 乃是由 Vue Router 所提供的一个独特的占位符组件。其作用至关重要,当路由规则成功匹配到对应的组件时,被匹配的组件内容就会在此处进行渲染并予以精彩展示。
综上所述,这段代码构成了一个 Vue 组件的基础架构。其核心要点在于巧妙地借助 <router-view> 实现对路由匹配组件内容的动态呈现,为应用的页面切换和内容更新提供了高效的实现方式。
运行结果:
首页:http://localhost:5173/home
关于页面:http://localhost:5173/about
Element UI安装
安装element-plus
在 Vue 项目中,首先要打开终端,并准确无误地切换至项目所在的目录。接下来,就可以通过以下命令来安装 Element UI:、
若选择使用 NPM:
此命令会借助 NPM 包管理器,将 element-plus 精准地安装到项目之中,并将其妥善地作为项目的依赖予以保存。
npm install element-plus --save
若决定使用 Yarn:
Yarn 同样具备出色的能力,能够顺利地完成 element-plus 的安装工作,并将其精准地添加到项目的依赖列表当中。
yarn add element-plus
若倾向于使用 pnpm:
pnpm 也完全可以实现 element-plus 的顺畅安装。
pnpm install element-plus
引入element-plus
在 main.js 文件中开展 Element UI 的引入操作:
首先:将 element-plus 模块引入进来,并加载其对应的样式文件。
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
然后进行注册:通过.use() 方法,将 ElementPlus 成功注册到 Vue 应用之中,使其能够在整个应用范围内被有效使用,从而为项目提供丰富多样的 UI 组件和精美时尚的样式。
createApp(App)
.use(ElementPlus)
总结:
如此一来,就圆满地完成了 element-plus 的安装和引入工作,为构建拥有精美界面的 Vue 应用奠定了坚实的基础。
使用element-plus
在 Vue 中运用部分 Element UI 的组件,例如构建了一个简易的 Vue 组件,呈现出了一个标题以及一个具备数据绑定内容的按钮,并且对相关数据进行了定义。借由这样的方式,达成了组件内部数据与视图的交互。以此来检测其安装是否成功以及功能是否处于正常状态。
代码如下:
<template> <div> <h2>这是首页</h2> <el-button>{{ message }}</el-button> </div>
</template> <script>
export default { data(){ return { message:'Hello Element Plus' } }
};
</script> <style scoped>
</style>
运行结果:
用户登录
详见下一章节
相关文章:

vue3.0脚手架、路由、Element Plus安装案例:收录于Vue 3.0 后台管理系统案例
目录 环境配置 Vue 3.0 脚手架(Vite)安装 node版本查询与切换 创建一个vue应用 Vue Router安装 安装vue-router4 配置路由 安装配置 展示路由 Element UI安装 安装element-plus 引入element-plus 使用element-plus 用户登录 环境配置 Vue 3…...

JS中原型相关的十个知识点总结
JavaScript 中的原型(Prototype)是理解对象和继承机制的核心概念。以下是我对 JavaScript 原型相关知识点的总结和详细讲解: 1. 原型对象(Prototype Object) 在 JavaScript 中,每个对象都有一个关联的对象…...

使用DevKit套件调优 --未完
基于鲲鹏开发板使用DevKit套件调优 鲲鹏开发板平台使用体验 我们使用的硬件平台是Orange Pi Kunpeng Pro,外观如下图 我们看到我们的Orange Pi 颜值相当的高,我们使用远程连接后就能看见我们非常漂亮的openEuler的桌面。 openEuler操作系统已经预装好了…...

Vue3+ElementUI中的Table组件的使用
Vue3ElementUI中的Table组件的使用 校验表格内多个输入框校验 表格滚动到底部 校验 表格内多个输入框校验 注意prop如何写。实现:一旦输入框内部有更改,清空校验;实现:自定义校验错误提示信息样式;实现:在…...

Highcharts 条形图:数据可视化的利器
Highcharts 条形图:数据可视化的利器 引言 在数据分析和可视化领域,Highcharts 是一个广受欢迎的 JavaScript 图表库。它以其易用性、灵活性和丰富的图表类型而著称。其中,条形图作为一种基础但功能强大的图表类型,被广泛应用于各种场景,以直观地展示数据分布和比较。本…...

嵌入式初学-C语言-二四
Void与void*的区别 定义: Void:空类型,是数据类型的一种 Void*:是指针类型,是指针类型的一种,可以匹配任何类型的指针,类似于通配符 Void 说明:void作为返回值类型使用…...

tcpdump入门——每种flag分别表示什么意思
在 tcpdump 的输出中,TCP 标志位(Flags)通常用简写字符表示。以下是每种 TCP 标志位的含义及其对应的简写字符: TCP 标志位及其简写 SYN (Synchronize) 作用:用于初始化连接。简写字符:S ACK (Acknowledgm…...

Qt如何封装工具
在Qt中封装工具类或库是一种常见的开发模式,通过封装可以提高代码的可重用性、可维护性和模块化。以下是封装工具类的一些步骤和最佳实践: ### 1. 创建工具类 首先,创建一个新的C类作为你的工具类。在Qt Creator中,可以通过右键点…...

vue3进阶用法之通过调用函数动态加载组件用法及示例
业务场景 假设现在有一个可能在全局任何地方调用的vue组件你会怎么办?非常简单,在app.vue下的router-view同级写上这个组件,在全局中加一个变量v-if判断这个变量就解决了! tempalte中 <div><router-view /><You…...

线程和进程的关系
计算机是如何运行的?CPU 操作系统 进程管理 CPU 多核心 充分利用-> 并发编程,并发执行就算分时复用, 包括多进程编程。 多进程编程进程太重,创建进程,销毁进程开销比较大 ,不利于频繁创建销毁进程&…...

《AI视频类工具之十二—— EbSynth》
一.简介 官网:https://ebsynth.com/?ref=ai-bot.cn EbSynth是一款功能强大的视频风格转换工具,它利用先进的图像处理和计算机视觉技术,将静态艺术风格应用到视频中的每一帧,为视频创作者提供了全新的创作方式。 二.功能介绍 主要功能 视频转换:EbSynth 可以将视频转换…...

Facebook国内企业户、海外户、国内二不限户以及三不限户区别何在?
Facebook广告账户的类型和设置对于企业在不同市场中的广告活动至关重要。了解国内企业户、海外企业户,以及国内二不限户和三不限户的区别,可以帮助你更好地选择和管理广告账户。以下是对这些账户类型的详细解析。 一、Facebook海外企业广告账户 海外企业…...

修改 ASP.NET Core 应用程序运行后的默认端口
可以通过以下几种方法来实现。具体选择哪种方法取决于项目需求和环境设置。 方法 1:使用 appsettings.json 配置文件 你可以在 appsettings.json 中设置 Kestrel 的配置来更改默认端口。 打开 appsettings.json 文件,添加 Kestrel 配置: { …...

维基知识库系统Wiki.js本地Linux环境部署并配置公网地址远程访问
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…...

010集——按值传递、按引用传递等方法——C#学习笔记
按值传递参数 这是参数传递的默认方式。在这种方式下,当调用一个方法时,会为每个值参数创建一个新的存储位置。 实际参数的值会复制给形参,实参和形参使用的是两个不同内存中的值。所以,当形参的值发生改变时,不会影…...

Linux系统调优技巧
Linux系统调优技巧 Linux 性能调优技巧的深度分析及场景案例目录 1. Linux 性能调优的基础概念1.1 性能调优的目标1.2 常见的性能瓶颈 2. 系统监控与性能分析工具2.1 常用工具介绍2.2 实战案例:如何通过工具定位性能问题 3. CPU 性能调优3.1 CPU 负载分析3.2 CPU 调…...

计算机学习
不要只盯着计算机语言学习,你现在已经学习了C语言和Java,暑假又规划学习Python,最后你掌握的就是计算机语言包而已。 2. 建议你找一门想要深挖的语言,沿着这个方向继续往后学习知识就行。计算机语言是学不完的,而未来就…...

数字医学影像系统PACS源码,三甲以下医院都能满足,C#语言开发,C/S架构系统成熟稳定,支持二次开发项目使用。
数字医学影像系统(RIS/PACS)源码,三甲以下的医院都能满足。开发技术:C/S架构,C#开发语言,数据库服务器采用Oracle数据库。 PACS系统模块组成 : 工作站: 分诊工作站、超声工作站、放…...

C++语言基础|循环结构
C语言基础|循环结构 循环1. for语句2. while循环3. do…while语句 循环 在程序中,常常需要重复地执行某些操作。C提供了3种循环语句:for语句、while语句和do-while语句。在循环语句中,重复执行的操作叫做循环体。循环体可以是单条语句、块语…...

【学习笔记】解决在声音输出中找不到蓝牙耳机设备的问题
【学习笔记】在声音输出中找不到蓝牙耳机设备 在使用蓝牙耳机的时候,遇见一个问题,就是在电脑在连接蓝牙耳机之后,在声音输出中找不到蓝牙耳机设备,只能使用扬声器播放声音。电脑使用的是Windows 11系统。后来在网上寻找解决方案…...

PPPoE基础笔记
一、拨号原理 1.Discovery(发现阶段) PADI Client 发送广播的PADI报文,报文中包含Client想要的服务信息。 PADO Server收到PADI后,会向Client回复一个单播的PADO报文。 PADR Client 收到最先收到的PADO…...

开发组日志记录SPEC_v0.1.0
文章目录 开发组日志记录SPEC_v0.1.0目的设计逻辑1. User日志记录器1.1 记录器标签内容介绍1.2 程序打印User日志规则 2. Dev日志记录器2.1 记录器标签内容介绍2.2 程序打印Dev日志规则 3.代码说明3.1 代码详情3.2 使用说明 更新记录 时间版本内容修订者备注2024/08/150.1.0创…...

MySQL8 innoDB引擎的精髓
[client] port 3306 socket /var/lib/mysql/mysql.sock [mysql] #prompt"\umysqldb \R:\m:\s [\d]> " #关闭自动补全sql命令功能 no-auto-rehash ########################################################################### ##服务端参数配置 ######…...

【C语言实现花屏效果并打包程序为exe可执行文件】
说明:该程序为临摹改良(😀)作品,源地址C/C屏幕恶搞程序 效果展示 上代码 #include <windows.h>#define NUM 11451LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);int main() // Renamed WinMain to main {static int iKeep[NU…...

数据结构——排序(2):选择排序+交换排序
目录 一、选择排序 (1)直接选择排序 ①思路 ②过程图示 ③代码实现 ④代码解释 ⑤优化 1.代码实现 2.过程图示 3.代码解释 4.注意 ⑥直接选择排序的复杂度 (2)堆排序 ①注意 ②代码实现 二、交换排序 (…...

jenkins升级踩坑记录
1. 直接用java 1.8版本启动最新版jenkins.war,直接失败 2. 下载java 11启动,依然失败,换成java17版本可以启动,但会报错 解决报错1: java.io.IOException: Failed to load: Parameterized Remote Trigger Plugin (Pa…...

mysql笔记第二篇
平时业务开发,大部分业务逻辑是使用sql还是代码编写呢? 这个每个公司可能要求不同,其实是每个公司负责人根据公司业务制定的规定。或者根本没有规定,每个负责单个项目的人领到需求直接开整,sql一把梭导致后面其他人维护…...

Facebook的区块链技术:提升数据安全与隐私保护
去中心化的优势 随着数字化时代的快速发展,数据安全和隐私保护已成为全球范围内备受关注的话题。Facebook作为全球最大的社交平台之一,正在积极探索如何通过区块链技术来提升数据的安全性和用户的隐私保护。区块链技术以其去中心化、不可篡改和透明的特…...

⌈ 传知代码 ⌋ Visual SLAM函数
💛前情提要💛 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间,对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…...

Vue组件之间的通信
一、通信方式 Props 和 Events:通过父组件传递 props 给子组件,子组件使用 $emit 发送事件到父组件。Event Bus:使用一个中央事件总线来跨组件通信。Vuex:使用 Vuex 进行全局状态管理,以便在任何组件间共享状态。Prov…...