目录

前端基础篇-前端工程化-Vue-项目开发流程环境准备Element-组件库Vue-路由项目打包部署

前端基础篇-前端工程化 Vue 项目开发流程(环境准备、Element 组件库、Vue 路由、项目打包部署)

文章目录


Vue - cil 是vue 官方提供的一个脚手架,用于快速生成一个 Vue 的项目。

Vue - cli 依赖环境为: NodeJs

https://i-blog.csdnimg.cn/blog_migrate/c97b0decfec28bdd40440a377cf30c9a.png

https://i-blog.csdnimg.cn/blog_migrate/88050116eb98fe439d71236281da403d.png

https://i-blog.csdnimg.cn/blog_migrate/dca9c3a544890cdc1db90f4e6acd8a81.png

NodeJs 安装完毕后,会自动配置好环境变量,我们验证一下是否安装成功,通过:node -v

Microsoft Windows [版本 10.0.22631.3296]
(c) Microsoft Corporation。保留所有权利。

C:\Windows\System32>node -v
v20.11.1

C:\Windows\System32>

出现了相对应的版本就配置成功了。

使用管理员身份运行命令行,在命令行中,执行如下指令:

npm config set prefix "注意:这里填写的是你自己的 NodeJs 的安装目录"

比如说:
npm config set prefix "E:\develop\NodeJs"

使用管理员身份运行命名行,在命令行中,执行如下指令:

//旧
npm config set registry https://registry.npm.taobao.org/
//新
npm config set registry https://registry.npmmirror.com

选择最新的指令即可,因为旧的已经过期了,无法使用了。

使用管理员身份运行命令,在命令行中,执行如下指令:

C:\Windows\System32>npm config get registry
https://registry.npmmirror.com

C:\Windows\System32>

这样就大致配置成功了。

使用管理员身份运行命令行,在命令中,执行如下指令:

npm install -g @vue/cli

这个过程中,会联网下载,可能会耗时几分钟,耐心等待。

https://i-blog.csdnimg.cn/blog_migrate/c23e929bb62f9373c9689dbd02cf103f.png

就像这样就代表 Vue - cli 配置成功了。

用管理员身份来执行以下指令:

C:\Windows\System32>vue --version
@vue/cli 5.0.8

C:\Windows\System32>

出现对应的版本就代表安装成功了。

用图像化界面创建项目,在 cmd 中运行以下代码:

https://i-blog.csdnimg.cn/blog_migrate/5b4d06404d402fec8efb1d79985107e0.png

回车之后会下面的界面:

https://i-blog.csdnimg.cn/blog_migrate/2a2ea12512d8f6e59b2d6c3826c7bd3c.png

将 Git 按键设置为:无

https://i-blog.csdnimg.cn/blog_migrate/f503d96d2baf49d487fd877327e994aa.png

选择手动配置项目:

https://i-blog.csdnimg.cn/blog_migrate/da6b31c68f127845bf331897162ad54a.png

额外再多选一个Router 功能

https://i-blog.csdnimg.cn/blog_migrate/4251b515866ff6435de23e18ae4a307f.png

选择 vue 的版本和语法监测规范:

https://i-blog.csdnimg.cn/blog_migrate/0448502bb8690622922088c992e6d14d.png

最后:

https://i-blog.csdnimg.cn/blog_migrate/c28f830cd8d8763725739a282069e425.png

可以看到创建的新的文件夹,即为成功创建了 Vue 项目了。

接着用 VS 打开这个文件:

https://i-blog.csdnimg.cn/blog_migrate/c75673e23ca45426b4ef4cc9315f0c9a.png

基于 Vue 脚手架创建出来的工程,有标准的目录结构。如下:

https://i-blog.csdnimg.cn/blog_migrate/ace34ed7b143fd3f21a709939431adc6.png

方式一:图形化界面启动

https://i-blog.csdnimg.cn/blog_migrate/4241188eadf0d7261fdc96618365dce1.png

https://i-blog.csdnimg.cn/blog_migrate/5e1b58108813d5ed3dff86ca23cb1d41.png

直接按下三角符号即可。

运行结果:

https://i-blog.csdnimg.cn/blog_migrate/4f8d1f602102765cd8aadb0fb11a6529.png

方式二:命令行

在当前创建好 vue 项目的目录上运行以下指令:

npm run serve

Element 是饿了么团队研发的,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。

组成:组成网页的部件,例如 超链接、按钮、图片、表格、表单、分页条等等。

官网:

npm install --legacy-peer-deps element-ui --sava

main.js 中引入组件库

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

完整的 main.js 文件:

https://i-blog.csdnimg.cn/blog_migrate/ea2c5e524ca30acbe95fc6f01dbe98d4.png

首先,在 views 中创建一个 .vue 文件。主要有三大部分:template、script、style

//简单认为,这里是 HTML 网页展示出来画面
<template>
    <div>

    </div>
</template>

//创建了 vue 核心对象,存放着数据、方法
<script>
export default {
    
}
</script>


//这里存放 css 样式代码
<style>

</style>

先找 Element 中找到自己喜欢的组件,比如说:按钮组件

https://i-blog.csdnimg.cn/blog_migrate/199188c37d9913bf96c67b5fa0812284.png

接着找到之后,将起代码复制,粘贴到 template 标签中:

https://i-blog.csdnimg.cn/blog_migrate/780b319f99777982fea9d9171bae150e.png

再接着,在 App.vue 中引用当前的 .vue 文件:

https://i-blog.csdnimg.cn/blog_migrate/1016a308f52954d6a2a43fc8222a0988.png

最后启动,运行结果如下:

https://i-blog.csdnimg.cn/blog_migrate/1fd08772391160d79a7f07c6f47fc850.png

Vue Router 是 Vue 的官方路由。

组成:

1) VueRouter:路由器类,根据路由请求在视图中动态渲染选中的组件。

2) :请求链接组件,浏览器会解析成超链接

3) :动态视图组件,用来渲染展示与路由器对应的组件。

举个例子:

https://i-blog.csdnimg.cn/blog_migrate/3c738b11d0bba3baada3347bd3ead7ce.png

接着配置两个文件的路径、名字等信息:

https://i-blog.csdnimg.cn/blog_migrate/e485879d4042bf5df23925efc815f89d.png

:请求链接组件

第一个文件:

https://i-blog.csdnimg.cn/blog_migrate/41270ef48bb1732b0a43e2bd4c6cb77f.png

第二个文件:

https://i-blog.csdnimg.cn/blog_migrate/02d0f688f636621d8ca8bdee2b308bf8.png

将其设置为 

https://i-blog.csdnimg.cn/blog_migrate/c5cd361e8d9054f1f446fa695d50bf6b.png

补充:在启动运行的时候,很有可能会报错以下的错误:

https://i-blog.csdnimg.cn/blog_migrate/7696ce12a8c5bedd7668d0ed6412e6ce.png

解决方案:

第一步:选择 vue.config,js 文件

https://i-blog.csdnimg.cn/blog_migrate/cbac286b5f8444c62b262613ea9c7b7f.png

第二步:添加以下代码(添加红方框中的代码即可)

https://i-blog.csdnimg.cn/blog_migrate/d3391d1a26b6df90eb1ecac3a99af42e.png

最终的运行结果:

有两个超链接:一个是文件 emp ,另一个是文件 ele 。

https://i-blog.csdnimg.cn/blog_migrate/d5322fb9155853c5a768f4f7d101cd1f.png

当点击另一个文件时,会自动跳转到另一个文件:

https://i-blog.csdnimg.cn/blog_migrate/22d2322ad34eff621c4e87f3968778c4.png

要对前端项目进行打包并部署,通常需要遵循以下步骤:

运行打包命令,具体命令取决于你使用的前端构建工具。打包完成后,会生成一个用于部署的静态文件夹( 通常是 dist 文件夹 )。

演示:

https://i-blog.csdnimg.cn/blog_migrate/e7bf755765e55f0fea2a4e2b4b965dd0.png

接着会自动生成 dist 文件夹:

https://i-blog.csdnimg.cn/blog_migrate/622bb6ce0ea6d446190914da4a125fe0.png

dist 文件夹下的文件: 这就是打包后的文件

https://i-blog.csdnimg.cn/blog_migrate/a53893fc731595f7dbf02b152a21e5a1.png

将打包好的文件可以部署在 Nginx 服务器上。

**Nginx 是一款轻量级的

web 服务器 /反向代理服务器及电子邮件代理服务器。其特点是占有内存少,并发能力强,在各大型互联网公司都有非常广泛的使用。**

安装官网:

https://i-blog.csdnimg.cn/blog_migrate/7191ac69193fb90587976134a1c80fac.png

https://i-blog.csdnimg.cn/blog_migrate/e23f4d49bd3762e8824b084acdaa1c54.png

把打包好的文件放到 html 文件中 ,通过 nginx.exe 可执行程序 运行起来。

部署:将打包好的 dist 目录下的文件,复制到 nginx 安装目录的 html 目录下。

https://i-blog.csdnimg.cn/blog_migrate/b115e91e85acab61ec9d7ab750b4a83f.png

启动:双击 nginx 文件即可,Nginx 服务器默认占用 80 端口号。

https://i-blog.csdnimg.cn/blog_migrate/e5b73e94a3b365b2c0556e1cb0f76c90.png

打开浏览器,通过​​​ ​​​​localhost:80 就可以访问到所部署在 web 服务器上的前端工程。

1】Nginx 默认占用 80 端口号,如果 80 端口号被占用,可以在 nginx.conf 中修改端口号。

https://i-blog.csdnimg.cn/blog_migrate/9f794f75d347f9c124d47d2c10ab4e1e.png

https://i-blog.csdnimg.cn/blog_migrate/cda0b9cc391de2c4f73b4bf95f39171f.png

如果 80 端口号被占用了,就可以通过该方式去修改默认的端口号了。

2】查找端口号的方法

通过命令行执行以下指令, 可以查看那个进程占用端口号 ,比如:

https://i-blog.csdnimg.cn/blog_migrate/4d44def8c90450f2ac864c1c73dd84e4.png

可以知道端口号 80 是被进程 PID 为:11772 进程占用,通过任务管理器来查看具体的进程。

https://i-blog.csdnimg.cn/blog_migrate/11acaef1f2c12a67d8baf7db164f6e15.png

正是 Nginx 占用,因为之前已经启动了该进程了,所以到目前为止由 Nginx 占用该端口号。

https://i-blog.csdnimg.cn/blog_migrate/105e15ed9cf8e49f31c03be192f1bc4a.gif