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 相关文章推荐
javascript iframe内的函数调用实现方法
Jul 19 Javascript
jquery获取div宽度的实现思路与代码
Jan 13 Javascript
使用jQuery清空file文件域的解决方案
Apr 12 Javascript
js结合正则实现国内手机号段校验
Jun 19 Javascript
jquery+php随机生成红包金额数量代码分享
Aug 27 Javascript
JavaScript实现多叉树的递归遍历和非递归遍历算法操作示例
Feb 08 Javascript
一个基于react的图片裁剪组件示例
Apr 18 Javascript
Vuex的基本概念、项目搭建以及入坑点
Nov 04 Javascript
自定义Vue中的v-module双向绑定的实现
Apr 17 Javascript
js实现随机8位验证码
Jul 24 Javascript
JS实现横向跑马灯效果代码
Apr 20 Javascript
Node.js API详解之 V8模块用法实例分析
Jun 05 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 minixml详解
2008/07/19 PHP
PHP中使用memcache存储session的三种配置方法
2014/04/05 PHP
非常好用的Zend Framework分页类
2014/06/25 PHP
PHP 5.3和PHP 5.4出现FastCGI Error解决方法
2015/02/12 PHP
DEDECMS首页调用图片集里的多张图片
2015/06/05 PHP
PHP检测用户是否关闭浏览器的方法
2016/02/14 PHP
ThinkPHP的常用配置选项汇总
2016/03/24 PHP
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
使用JavaScript switch case 另类写法
2010/03/14 Javascript
Jquery+ajax请求data显示在GridView上(asp.net)
2010/08/27 Javascript
Javascript中valueOf与toString区别浅析
2013/03/19 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
易操作的jQuery表单提示插件
2015/12/01 Javascript
jQuery使用$.ajax提交表单完整实例
2015/12/11 Javascript
用js实现放大镜的效果的简单实例
2016/05/23 Javascript
使用JS实现图片展示瀑布流效果的实例代码
2016/09/12 Javascript
JavaScript模板引擎Template.js使用详解
2016/12/15 Javascript
详解如何较好的使用js
2016/12/16 Javascript
Bootstrap和Java分页实例第一篇
2016/12/23 Javascript
在vue项目中,使用axios跨域处理
2018/03/07 Javascript
详解vue axios二次封装
2018/07/22 Javascript
vue-simple-uploader上传成功之后的response获取代码
2020/09/07 Javascript
[10:04]国际邀请赛采访专栏:DK.Farseer,mouz.Black^,采访员Josh专访
2013/08/05 DOTA
[02:57]2014DOTA2国际邀请赛 选手辛苦解说更辛苦
2014/07/10 DOTA
在python中,使用scatter绘制散点图的实例
2019/07/03 Python
python中matplotlib实现随鼠标滑动自动标注代码
2020/04/23 Python
Python urllib.request对象案例解析
2020/05/11 Python
如何基于Python爬取隐秘的角落评论
2020/07/02 Python
PyTorch 导数应用的使用教程
2020/08/31 Python
python logging模块的使用
2020/09/07 Python
有原因的手表:Flex Watches
2019/03/23 全球购物
美国眼镜在线零售商:Dualens
2019/12/07 全球购物
优秀乡村医生先进事迹材料
2014/08/23 职场文书
乡党政领导班子群众路线教育实践活动个人对照检查材料
2014/09/20 职场文书
小学端午节活动总结
2015/02/11 职场文书
python基础详解之if循环语句
2021/04/24 Python