Element
前面介绍了三剑客(HTML,CSS,JavaScript),Axios和Vue,本篇将带你快速了解并使用Element组件库以及了解Nginx项目打包部署流程。
一、Element
1、概述
Element是饿了么团队研发的,一套为开发者、设计师和产品经理准备的基于Vue 2.0的桌面端组件库。
Element官方网站:https://element.eleme.cn/#/zh-CN
组件:组成网页的部件,例如超链接、按钮、图片、表格、表单、分页条等等。
2、快速入门
1)安装ElementUI组件库
在当前工程的目录下,右键打开终端
在终端下输入如下命令进行安装
1 | npm install element-ui@2.15.3 |
2)引入ElementUI组件库
将下述代码加入main.js文件中。
1 | import ElementUI from "element-ui" ; |
在 views目录下新建一个element目录,并在该目录下新建一个 ElementView.vue文件,用于编写本次快速入门的代码
3)访问官网,复制组件代码,并调整
这里我们选择一组按钮,复制其代码。当然,还有很多其他组件,可查看官方文档自行替换。
官方文档:https://element.eleme.cn/#/zh-CN/component/installation
黏贴到ElementView.vue文件的<div>标签中,并调整一下格式
注:选中多行,按 tab,多行会同时缩进,提高调整效率。
这时候运行还没有效果,因为还要在App.vue根组件中引用ElementView.vue中的内容。如下
点击NPM脚本中的三角形小按钮运行项目,浏览器中访问得到的地址 http://localhost:7000/ , 成功显示如下。
3、常用组件
常用组件的学习比较简单,因为官方文档中提供了各种组件的代码,只需根据需要复制修改即可。
官方文档:https://element.eleme.cn/#/zh-CN/component/installation
3.1 Table 表格
用于展示多条结构类似的数据,可对数据进行排序、筛选、对比或其他自定义操作。
以带边框表格为例。
1)在官方文档中找到 组件 ->Table表格 ->带边框的表格,复制代码到我们的ElementView.vue文件中,按 ctrl+alt+l 格式化一下,这样看起来更加规整。
2)再回去复制表格对应的data数据。
3)查看运行效果
注:如果有某些参数不懂的,可以查看官方文档里面的参数说明,非常全面和详细,部分如下。
3.2 Pagination 分页
当数据量过多时,使用分页分解数据。
以带有背景色的分页为例。
1)在官方文档中找到 组件 ->Pagination分页 ->带有背景色的分页,复制代码到我们的ElementView.vue文件中,按 ctrl+alt+l 格式化一下,这样看起来更加规整。
1 | <el-pagination |
2)浏览器查看效果
注:如果有某些参数不懂的,可以查看官方文档里面的参数说明,非常全面和详细,部分如下。
可以参考官方文档的参数说明,自行设置展示的效果,比如,设置原来代码中的 layout如下
1 | <!-- Pagination分页 --> |
则浏览器查看效果为
3)其他
可根据需要自行查看或设置其他附加功能,照猫画虎,这里不再赘述。
设置Events事件触发
3.3 Dialog 对话框
在保留当前页面状态的情况下,告知用户并承载相关操作。
以自定义内容为例。
Dialog 组件的内容可以是任意的,甚至可以是表格或表单
1)在官方文档中找到 组件 ->Dialog对话框 ->自定义内容,复制代码到我们的ElementView.vue文件中,按 ctrl+alt+l 格式化一下,这样看起来更加规整。
1 | <!-- Table --> |
易知需要 dialogTableVisible和 gridData两个数据模型。再将含有这两个的代码复制过来,如下
1 | gridData: [{ |
2)浏览器查看效果
当点击蓝字时,就会弹出一个对话框,如下。
注:通过 visible.sync=”dialogTableVisible”控制对话框的显示与隐藏,如果 dialogTableVisible = true,就代表显示对话框,为 false则隐藏。
初始dialogTableVisible是默认设定为 false的,由于绑定了事件,所以当我们一点击它时,就变成为我们设置的 true了。
3.4 Form 表单
由输入框、选择器、单选框、多选框等控件组成,用以收集、校验、提交数据
以典型表单为例,其包括各种表单项,比如输入框、选择器、开关、单选框、多选框等。
注:更多内容可以参考官方文档,里面有详细介绍和说明,照猫画虎即可,这里不再长篇赘述。
二、Vue路由(vue Router)
vue Router 是Vue的官方路由。
前端路由:URL中的 hash(#号)与组件之间的对应关系。
1、概述
1.1 组成
- VueRouter:路由器类,根据路由请求在路由视图中动态渲染选中的组件
- <router-link>:请求链接组件,浏览器会解析成<a>
- <router-view>:动态视图组件,用来渲染展示与路由路径对应的组件
2、使用步骤
2.1 安装
因为我们创建Vue项目时已选择了开启路由,所以此步可以忽略。如果没有开启的,在项目的终端运行如下代码
1 | npm install vue-router@3.5.1 |
2.2 定义路由
如下图
三、打包部署
1、打包
在NPM脚本下选择build进行打包,打包后的文件会放在 dist目录下,如下
在项目下找到 dist目录,右键 ->在文件资源管理器中显示,只需要将 dist目录下打包后的资源部署在服务器上就可以了。
2、部署
2.1 Nginx介绍
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
特点:占有内存少,并发能力强,在各大型互联网公司都有非常广泛的使用。
2.2 Nginx下载
1)下载压缩包并解压
进入官网下载,找到 download,选择需要的版本下载即可,比如下载稳定版。
下载好后,将其复制到一个没有中文的目录下(比如我的是D盘根目录下),右键 ->解压到当前文件夹。
2.3 Nginx目录说明
2.4 部署
部署:将 nginx原来html目录下的两个文件删除,并将打包好的dist目录下的文件,复制到nginx安装目录的 html目录下。
2.5 启动
启动:双击 nginx.exe文件即可,Nginx服务器默认占用80端口号
注:由于 nginx默认占用80端口,如果80端口被占用,可以在 nginx.config中修改端口号
查看端口号的占用情况
1 | netstat -ano | findStr 80 |
2.6 访问
由于80端口经常存在被占用的情况,于是我将80端口改为了90,再次启动nginx,并在浏览器输入:http://localhost:90
注:如果修改的是其他端口,访问对应的端口就行。
大功告成!界面如下