Vue中引入Element组件、路由router、Nginx打包部署

news2024/12/27 1:00:17

目录

 1、Element-ui(饿了么ui)

演示:

怎么打开NPM脚本?

Vue路由router

Nginx打包部署Vue-Cli项目


 1、Element-ui(饿了么ui)


element-ui(饿了么ui)是一个非常好用且美观的组件库(插件库),主要用于网站快速成型,由国产团队饿了么团队开发的,所有又称饿了么ui。

官网:elementui官网文档

现在我们通过链接来到Element官网,找到右上角的组件

点击安装,这里提供了两种安装方式,1:npm安装 2:CDN形式引入css和js文件。《个人建议使用第一种》

npm安装命令:

npm i element-ui -S

安装完成后,然后在Vue项目中文件入口-main.js中引入ElementUI组件库

在main.js中加入以下代码:

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
Vue.use(ElementUI);

引入成功之后,可以在node_modules目录下找到E打头的element-ui文件,证明你引入成功了。

现在我们ElementUI组件库就引入到我们的Vue项目了,现在可以去官网复制粘贴需求的代码。

点击此链接来到ElementUI组件库的官网!!!

演示:

下面来演示如何在Vue中添加我们需要的按钮代码:

现在把我们需要的按钮代码拿到我们新创建的.vue视图:

如果我们需要渲染页面,现在就需要在App.vue根目录导入我们所创建的视图:

注意:

  1. 必须要在<template>标签加上自定义标签,标签名和你的命名相同。
  2. 在<script>标签中需要导入我们所创建的视图,在components属性中导入组件。

现在我们输入命令启动我们的项目。

在vscode中新创建一个终端,输入以下命令:

npm run serve

运行之后的效果如图所示:

注意:

这里我的端口号是8000,VueCli默认端口号是8080,如果我们需要修改自己的端口号,需要在配置文件-vue.config.js添加一下配置代码:

快捷键:Ctrl+鼠标点击我们访问的地址,就能看到渲染主页面的效果了:

效果如下图:

现在再来演示一个分页组件:

现在来解释一下layout布局中的可选属性:可以从官网下滑看到一些属性都给出了相应的解释。

layout 属性的值是一个由逗号分隔的字符串,指定了分页组件中需要显示哪些部分。每个部分代表分页组件的一个功能:

  • sizes: 允许用户选择每页显示的条目数量。
  • prev: 上一页按钮。
  • pager: 页码列表,显示当前页和周围的一些页码。
  • next: 下一页按钮。
  • jumper: 跳转到指定页码的输入框。
  • ->: 表示连续的页码,通常与 pager 一起使用。
  • total: 显示总条目数。
  • slot: 一个自定义的插槽,允许你在分页组件中插入自定义内容。

这里重点讲一下solt属性:

slot 属性允许你插入自定义的分页内容,比如自定义的页码显示逻辑、额外的按钮或者其他任何你想要展示的 HTML 元素。

Element UI 的分页组件提供了一个插槽 slot="prepend" 用于在分页组件前插入内容,以及 slot="append" 用于在分页组件后插入内容。

<el-pagination
  layout="sizes,prev,pager,next,jumper,->,total,slot"
  :total="1000">
  <template slot="prepend">
    <!-- 在这里插入自定义内容,比如自定义的按钮或文本 -->
  </template>
  <template slot="append">
    <!-- 在这里插入自定义内容 -->
  </template>
</el-pagination>

创建一个.vue文件复制我们的代码,然后就是在App.vue导入我们所创建的分页视图:

运行之后的效果:

拓展:

怎么打开NPM脚本?

我们可以在vscode中打开NPM脚本直接运行项目,不需要每次运行都输入npm run serve命令,以便于给我们提供便捷快速运行的方式。

打开vscode中的设置,点击扩展,找到Npm,勾选上显示选项。

如果vscode左下角还是没有显示NPM脚本,可以尝试快捷键Ctrl+Q,选择Npm。

Vue路由router

介绍:Vue Router是Vue的官方路由。

安装:npm install vue-router@3.5.1
组成:

  • VueRouter:路由器类,根据路由请求在路由视图中动态渲染选中的组件。
  • <router-link>:请求链接组件,浏览器会解析成<a>。
  • <router-view>:动态视图组件,用来渲染展示与路由路径对应的组件。

找到Vue项目中的router,打开index.js文件,这里提供了两种导入方式。


这里建议使用第二种方式直接导入,现在对routes参数进行相应的解释:

  • path:是我们访问的路径
  • name:路由名称
  • component:导入的组件

注意:如果想访问about的vue组件,将上面的路径改写成/about就行。

在哪里需要跳转就加上<router-link to="">标签☺

还需要在App.vue页面加上<router-view></router-view>标签实现页面渲染。

现在我们来看看运行效果:

Nginx打包部署Vue-Cli项目

Nginx (发音为 "engine-x") 是一个高性能的 HTTP 服务器、反向代理、负载均衡器以及TCP/UDP代理服务器。

以下是 Nginx 的一些主要特点:

  • 高性能:Nginx 以其轻量级和高性能而闻名,能够处理大量的并发连接和请求。
  • 稳定性:Nginx 以其稳定性著称,能够长时间运行而无需重启。
  • 配置简单:Nginx 的配置文件结构清晰,易于理解和修改。
  • 灵活性:Nginx 不仅可以作为静态网页服务器,还可以作为代理服务器,支持 HTTP、HTTPS、SMTP、POP3 和 IMAP 协议。
  • 反向代理:Nginx 常用于实现反向代理功能,将客户端的请求转发到后端服务器上,并获取后端服务器的响应后返回给客户端。
  • 负载均衡:Nginx 可以作为负载均衡器,将请求分发到多个后端服务器,提高网站的性能和可靠性。
  • 安全性:Nginx 提供了多种安全特性,如防止DDoS攻击和限制用户访问。
  • 模块化:Nginx 拥有丰富的模块系统,可以通过安装额外的模块来扩展其功能。
  • 跨平台:Nginx 可以在多种操作系统上运行,包括 Unix-like 系统和 Windows。

Nginx 广泛用于网站和网络应用的部署,是当前互联网上使用最广泛的服务器之一。它常与 PHP、Python、Perl 等语言结合使用,通过 FastCGI 或 uWSGI 协议提供动态网页服务。

安装:点击此链接进行下载,下载完成之后来到download页面,选择稳定版本。

安装之后解压到我们电脑本地:

然后我们在终端输入命令npm run build,进行项目打包,打包完成之后可以看到项目下多了一个dist文件夹,里面存放了一些静态文件。

 现在执行以下重要两步:

●部署:将打包好的dist目录下的文件,复制到nginx安装目录的html目录下。
●启动:双击Nginx.exe文件即可,Nginx服务器默认占用80端口号。

注意:双击Nginx.exe没有反应,并且在进程中没有看到它运行,说明它默认的80端口号已经被占用了,现在我们可以输入命令查找80端口号进程。

netstat -ano | findstr :端口号

打开我们的cmd窗口,输入命令开始查找:

打开我们的任务管理器,点击详细信息,可以发现我们80端口号已经被System占了,所以现在只能更改我们默认的端口号。

打开Nginx安装路径下的conf/配置文件nginx.conf

打开之后,在配置文件中进行更改:

更改端口号完成之后,双击Nginx.exe文件即可,完成这步操作之后,我们可以在任务管理器中看到nginx.exe正在运行。

完成以上操作,我们利用Nginx部署Vue-Cli项目就完成啦!

现在我们可以直接在电脑本地访问链接http://localhost:90!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1660710.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网工交换基础——VLAN Maping

一、定义 VLAN Maping通过修改报文携带的VLAN Tag来实现不同VLAN的相互映射。 二、应用场景 1、场景一&#xff1a;两个VLAN相同的二层用户网络通过骨干网络互联&#xff0c;为了实现用户之间的二层互通&#xff0c;以及二层协议&#xff08;例如MSTP等&#xff09;的统一部署…

如何内网穿透,远程访问内网设备

文章目录 0.前言1.准备工作2.内网穿透原理3.配置公网服务器的frp5.配置访问内网主机6.配置win10的远程桌面访问&#xff08;win11类似&#xff09;7.参考资料 0.前言 最近想研究一些新东西&#xff0c;公司的机器不敢乱搞&#xff0c;公司测试的服务器安装软件太多&#xff0c…

React - Input框绑定动态State和监听onChange事件,输入时失去焦点

React - Input框绑定动态State和监听onChange事件&#xff0c;输入时失去焦点 一. 案例复现二. 解决方案 一. 案例复现 案例代码如下&#xff1a; import React, { useState } from react; import { Table, Input } from antd; const Column Table.Column; const mockData …

CSP-j 计算机硬件

计算机系统 计算机系统由计算机硬件和软件两部分组成。硬件包括中央处理器、存储器和外部设备等&#xff1b;软件是计算机的运行程序和相应的文档。计算机系统具有接收和存储信息、按程序快速计算和判断并输出处理结果等功能。 主要技术指标 字长&#xff1a;字长是指CPU能够同…

anaconda虚拟环境pytorch安装

1.先创建conda的虚拟环境 conda create -n gputorch python3.102.激活刚刚创建好的虚拟环境 conda activate gputorch3.设置镜像源 这一步是后面安装pytorch相关包所需要的来源 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple4.查看电脑的显卡…

【C++进阶】C++中的map和set

一、关联式容器 在初阶阶段&#xff0c;我们已经接触过STL 中的部分容器&#xff0c;比如&#xff1a; vector 、 list 、 deque&#xff0c; forward_list 等&#xff0c;这些容器统称为序列式容器&#xff0c;因为其底层为线性序列的数据结构&#xff0c;里面存储的是元素本…

PyQt5的布局管理

文章目录 1.垂直布局和水平布局垂直布局&#xff08;QVBoxLayout&#xff09;&#xff1a;水平布局&#xff08;QHBoxLayout&#xff09;&#xff1a; 2. 布局中的addStrech2.1 我们首先看只有一个Strech的情况&#xff0c;比较容易理解2.2 两个Strech2.3 多个Strech 3.栅格布局…

linux下使用jexus部署aspnet站点

1.运行环境 Centos 7 安装dos2unix工具 yum install dos2unix 安装jexus curl https://jexus.org/release/x64/install.sh|sudo sh2.网站部署 2.1. 将windows下的网站发布包Msc_qingdao_admin.zip上传到linux中&#xff0c; 然后解压后放入/var/www(没有则创建)目录下 r…

二叉树的遍历(前序 中序 后序)

一、前序遍历 顺序为&#xff1a; 根-->左子树---->右子树 先访问根节点&#xff0c;再递归进入根节点的左子树&#xff08;通过递归不断往下遍历&#xff09;&#xff0c;直到访问的节点没有左子树&#xff0c;此时递归进入其右子树&#xff08;通过递归进行相同操作&a…

简单问题汇总

一、vector和list 1.vector vector是可变大小数组的序列容器&#xff0c;拥有一段连续的内存空间&#xff0c;并且起始地址不变&#xff0c;因此能高效的进行随机存取&#xff0c;时间复杂度为o(1)&#xff1b;但因为内存空间是连续的&#xff0c;所以在进行插入和删除操作时…

机器学习算法应用——关联规则分析(4-4)

关联规则分析&#xff08;4-4&#xff09; 关联规则分析&#xff08;Association Rule Mining&#xff09;是一种基于频繁项集的分析方法&#xff0c;它以最常出现在一起的元素之间的关系作为分析对象&#xff0c;主要用于发掘大数据中隐藏的关联规则&#xff0c;是数据挖掘技术…

【吃透Java手写】4-Tomcat-简易版

【吃透Java手写】Tomcat-简易版-源码解析 1 准备工作1.1 引入依赖1.2 创建一个Tomcat的启动类 2 线程池技术回顾2.1 线程池的使用流程2.2 线程池的参数2.2.1 任务队列&#xff08;workQueue&#xff09;2.2.2 线程工厂&#xff08;threadFactory&#xff09;2.2.3 拒绝策略&…

求阶乘n!末尾0的个数溢出了怎么办

小林最近遇到一个问题&#xff1a;“对于任意给定的一个正整数n&#xff0c;统计其阶乘n&#xff01;的末尾中0的个数”&#xff0c;这个问题究竟该如何解决&#xff1f; 先用n5来解决这个问题。n的阶乘即n!5!5*4*3*2*1120&#xff0c;显然应该为2个数相乘等于10才能得到一个结…

记录minio的bug(Object name contains unsupported characters.)

场景是我将后端服务从121.xxx.xxx.xxx服务器上转移到了另一台服务器10.xxx.xxx.xxx 但图片都还在121.xxx.xxx.xxx服务器上&#xff0c;同样我10.xxx.xxx.xxx也安装了minio并且我的后端服务配置的minio地址也是10.xxx.xxx.xxx 此时有一个业务通过minio客户端获取图片&#xf…

自动化中遇到的问题归纳总结

1、动态元素定位不到 解决方法&#xff1a;尽量使用固定元素定位&#xff0c;如没有固定元素&#xff0c;则采用绝对路径进行定位&#xff0c;因为元素路径是唯一且不变的 2、自动化脚本执行速度较慢 尽量使用css方法定位元素&#xff0c;使用等待时&#xff0c;少用sleep方…

websocket最大数量的限制问题

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 http://218.75.87.38:9666/ 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a; h…

C++类和对象项目:斗地主残局(做为程序员怎么能被人机虐)

斗地主残局解析项目 项目工程化 由于这是一个项目&#xff0c;所以我们需要按照标准的项目工程化来进行设计。 分析大体框架 1. 如何读取牌 如何进行文件读取&#xff0c;可以参看我这篇博客:C语言笔记:文件操作 //创建两个数组进行存储自己和对手的牌 int a[MAX_N 5] {…

一文了解spring事务特性

推荐工具 objectlog 对于重要的一些数据&#xff0c;我们需要记录一条记录的所有版本变化过程&#xff0c;做到持续追踪&#xff0c;为后续问题追踪提供思路。objectlog工具是一个记录单个对象属性变化的日志工具,工具采用spring切面和mybatis拦截器相关技术编写了api依赖包&a…

【Java】HOT100+代码随想录 动态规划(上)背包问题

目录 理论基础 一、基础题目 LeetCode509&#xff1a;斐波那契数 LeetCode70&#xff1a;爬楼梯 LeetCode746&#xff1a;使用最小花费爬楼梯 LeetCode62&#xff1a;不同路径 LeetCode63&#xff1a;不同路径ii LeetCode343&#xff1a;整数拆分 LeetCode96&#xff1a;不…

P8802 [蓝桥杯 2022 国 B] 出差

P8802 [蓝桥杯 2022 国 B] 出差 分析 很明显&#xff1a;单源最短路径 没有负权边 dijkstra 1.存图 2.准备两个数组 dis[]&#xff1a;更新源点到各个点的距离 vis[]&#xff1a;标记是否访问 3.从源点开始&#xff0c;更新源点到与其邻接的点的距离&#xff0c;每次选…