IT俱乐部 JavaScript Vue-router路由、Axios、项目打包部署全过程(Tomcat部署、Nginx部署)

Vue-router路由、Axios、项目打包部署全过程(Tomcat部署、Nginx部署)

vue-router路由

使用vue-router和vue可以非常方便的实现 复杂单页应用的动态路由功能。

使用npm安装

npm install vue-router --save

需求:如下页面,点击登录或注册链接,动态加载对应组件,实现组件切换

创建登录组件Login.vue

登录

用户名:

密码:

export default { name: "Login" };

创建注册组件Reg.vue

注册

用户名:

密码:

确认密码:

export default { name: "reg" };

创建主页组件Home.vue

登录注册

在router/index.js中配置路由信息

axios

官网:http://www.axios-js.com

Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和node.js 中,具有以下特征:

  • 从浏览器中创建 XMLHttpRequests
  • 从 node.js 创建 http 请求
  • 支持 Promise API
  • 拦截请求和响应
  • 转换请求数据和响应数据
  • 取消请求
  • 自动转换 JSON 数据
  • 客户端支持防御 XSRF

安装

npm install axios
# npm install vue-axios --save
# npm install qs.js --save     // 作用是能把json格式的直接转成data所需的格式

全局注册

在main.js页面引用

import axios from "axios"
Vue.prototype.$axios = axios   // 全局注册,使用方法为:this.$axios
# import qs from 'qs'
# Vue.prototype.qs = qs           // 全局注册,使用方法为:this.qs

hello world

员工编号 姓名 性别 工资 生日
{{emp.id}} {{emp.name}} {{emp.sex}} {{emp.sal}} {{emp.birthday}}
export default { name: "demo1", data() { return { emps: [] }; }, methods: { getEmp() { this.$axios .get(" https://www.easymock.com/mock/5cb1dfa1e1383c29e74b5fbe/emp") .then(response => { this.emps = response.data.data; }); } } };

项目打包部署

打包

  • 修改/config/index.js中的assetsPublicPath(有两处),从 / 修改为 ./
  • 执行命令npm run build

tomcat部署

  • dist目录下的文件拷贝到Tomcat服务器下
  • 启动tomcat

nginx部署

  • 将dist目录下的文件拷贝到nginx根目录的html文件夹下
  • 修改nginx的conf目录下文件nginx.conf,编辑server节点
server {
    listen       8081; # 监听端口
    server_name localhost; # 监听域名
    location / {
        root   html; # 根目录
        index  index.html index.htm; # 首页
        try_files $uri $uri/ @router;
   }
    location @router {
        rewrite ^.*$ /index.html last;
   }
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT俱乐部。

本文收集自网络,不代表IT俱乐部立场,转载请注明出处。https://www.2it.club/navsub/js/18682.html
上一篇
下一篇
联系我们

联系我们

在线咨询: QQ交谈

邮箱: 1120393934@qq.com

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部