vue-cli3配置与跨域处理方法


Posted in Javascript onAugust 17, 2019

安装 vue-cli3 环境准备

1. 如果您已安装 vue-cli2 ,请先删除当前脚手架,否则无法成功安装 vue-cli3

npm uninstall vue-cli -g

2. 检查 node.js 版本。 vue-cli3 需要 node 版本大于8.9。在cmd中输入 node -v 查看版本。如果版本过低,请先去 node官网 中下载高版本。

vue-cli3配置与跨域处理方法

安装脚手架

vue-cli3的包名有 vue-cli 改为 @vue/cli 。 使用npm全局安装vue-cli3。

npm install @vue/cli -g

然后使用 vue -V

vue-cli3配置与跨域处理方法

使用vue-cli3创建项目

vue-cli3 创建项目的方式和2.x也有一些区别。首先创建项目时给我们更多可配置的选项,在选择手动选择特性时,可以根据提示选择是否安装 vue-routervuex 等。其次其目录结构也可2.x有区分,下文会详细讲。然后我们可以把本次安装配置保存为以后可以复用的preset,在以后创建项目时更快速。

1.输入 vue create vue_cli3_test ,上下键可以选择默认安装或者手动安装。这次我选择手动安装。

vue-cli3配置与跨域处理方法

2.点击回车键,进入配置界面。将需要安装的配置前面勾选为*。空格键可以选中和取消选中。可以根据个人需求进行配置。

安装成功后根据提示进入目录,并运行项目。

cd vue_cli3_testyarn serve

vue-cli3配置与跨域处理方法

3. vue-cli3 提供了图形界面方式进行创建项目, 可以在网页上直接进行项目的配置。

vue ui

4.打开目录时发现配置文件都在了,大家不要慌张。可以在 package.json 文件的同级目录下创建 vue.config.js 文件。文件的格式应该为

// vue.config.js
module.exports = {
 // 选项...
}

下面为我的基础配置:

module.exports = {
  outputDir: 'dist',  //build输出目录
  assetsDir: 'assets', //静态资源目录(js, css, img)
  lintOnSave: false, //是否开启eslint
  devServer: {
    open: true, //是否自动弹出浏览器页面
    host: "localhost", 
    port: '8081', 
    https: false,  //是否使用https协议
    hotOnly: false, //是否开启热更新
    proxy: null,
  }
}

官网给出了丰富而全面的配置,更多配置请参考 https://cli.vuejs.org/zh/conf... 。

跨域处理

前后端分离开发时,不得不面对跨域问题。对于跨域,可以用两种办法进行处理。

1.安装nginx,将后端和前端都代理带nginx上。

2.在vue-cli中配置proxy,将API请求代理到API服务器上。设置devServer.proxy

devServer: {
    open: true, //是否自动弹出浏览器页面
    host: "localhost", 
    port: '8081',
    https: false,
    hotOnly: false, 
    proxy: {
      '/api': {
        target: 'http://localhost:5000', //API服务器的地址
        ws: true, //代理websockets
        changeOrigin: true, // 虚拟的站点需要更管origin
        pathRewrite: {  //重写路径 比如'/api/aaa/ccc'重写为'/aaa/ccc'
          '^/api': ''
        }
      }
    },
  }

所以若是后端的API为'/aaa/ccc',我们需要在发请求时将路径设置为'/api/aaa/ccc',这样我们的请求才会被proxy代理到。

总结

以上所述是小编给大家介绍的vue-cli3配置与跨域处理方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言小编会及时回复大家的

Javascript 相关文章推荐
jQuery 1.0.4 - New Wave Javascript(js源文件)
Jan 15 Javascript
Javascript 判断 object 的特定类转载
Feb 01 Javascript
JavaScript Event学习第五章 高级事件注册模型
Feb 07 Javascript
JavaScript对象链式操作代码(jquery)
Jul 04 Javascript
jquery清空表单数据示例分享
Feb 13 Javascript
AngularJs篇:使用AngularJs打造一个简易权限系统的实现代码
Dec 26 Javascript
JavaScript获取select中text值的方法
Feb 13 Javascript
Easyui ueditor 整合解决不能编辑的问题(推荐)
Jun 25 Javascript
JavaScript中import用法总结
Jan 20 Javascript
js页面加载后执行的几种方式小结
Jan 30 Javascript
mpvue实现微信小程序快递单号查询代码
Apr 03 Javascript
vue组件讲解(is属性的用法)模板标签替换操作
Sep 04 Javascript
vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)
Aug 17 #Javascript
vue 使用element-ui中的Notification自定义按钮并实现关闭功能及如何处理多个通知
Aug 17 #Javascript
微信小程序开发之map地图组件定位并手动修改位置偏差
Aug 17 #Javascript
微信小程序移动拖拽视图-movable-view实例详解
Aug 17 #Javascript
微信小程序框架的页面布局代码
Aug 17 #Javascript
vue实现滑动到底部加载更多效果
Oct 27 #Javascript
vue实现页面滚动到底部刷新
Aug 16 #Javascript
You might like
PHP 在数组中搜索给定的简单实例 array_search 函数
2016/06/13 PHP
使用YII2框架实现微信公众号中表单提交功能
2017/09/04 PHP
JSON.parse 解析字符串出错的解决方法
2010/07/08 Javascript
JS 添加网页桌面快捷方式的代码详细整理
2012/12/27 Javascript
固定背景实现的背景滚动特效示例分享
2013/05/19 Javascript
JS 实现BASE64_ENCODE和BASE64_DECODE(实例代码)
2013/11/13 Javascript
JS 打印界面的CSS居中代码适用所有浏览器
2014/03/19 Javascript
JavaScript常用脚本汇总(一)
2015/03/04 Javascript
使用C++为node.js写扩展模块
2015/04/22 Javascript
jQuery通过Ajax返回JSON数据
2015/04/28 Javascript
AngularJS 作用域详解及示例代码
2016/08/17 Javascript
JavaScript数组去重的多种方法(四种)
2017/09/19 Javascript
Less 安装及基本用法
2018/05/05 Javascript
Vue组件Draggable实现拖拽功能
2018/12/01 Javascript
Node.js学习教程之Module模块
2019/09/03 Javascript
Vue项目环境搭建详细总结
2019/09/26 Javascript
vue 解决form表单提交但不跳转页面的问题
2019/10/30 Javascript
js数据类型转换与流程控制操作实例分析
2019/12/18 Javascript
[52:29]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第三局
2016/03/03 DOTA
python实现排序算法
2014/02/14 Python
在Python中用get()方法获取字典键值的教程
2015/05/21 Python
Python3.6使用tesseract-ocr的正确方法
2018/10/17 Python
Python使用matplotlib绘制三维参数曲线操作示例
2019/09/10 Python
基于python中__add__函数的用法
2019/11/25 Python
np.dot()函数的用法详解
2020/01/17 Python
解决json中ensure_ascii=False的问题
2020/04/03 Python
美国嘻哈文化生活方式品牌:GLD
2018/04/15 全球购物
诺心蛋糕官网:LE CAKE
2018/08/25 全球购物
神话般的珠宝:Ross-Simons
2020/07/13 全球购物
如何查询Oracle数据库中已经创建的索引
2013/10/11 面试题
一名毕业生的自我鉴定
2013/12/04 职场文书
综合实践活动方案
2014/02/14 职场文书
关于安全的标语
2014/06/10 职场文书
员工生日会策划方案
2014/06/14 职场文书
2020年元旦祝福语录,总有适合你的
2019/12/31 职场文书
python manim实现排序算法动画示例
2022/08/14 Python