如何配置vue-cli4.0
这是一期主要分享vue-cli4.0
配置
新建一个项目,最令人为难的是配置环境。拿vue来说,创建项目很简单,跟着文档走即可,但是要知道配置本地,测试,生产环境,以及反向代理等等,如果对于一个对vue构建不是特别了解,或者对webpack
不是特别了解的人来说,真是很为难。
创建项目不再赘述,直接看如何配置环境。
配置反向代理
反向代理其实就是在本地为了解决跨域问题,将本地启动的比如localhost:8080
代理成测试环境,发送给后端就不会出现跨域的问题。
vue-cli2.0
以及以前,都是在创建项目的时候,会自动创建一个文件夹build
,里面有各个环境配置的文件。vue-cli3.0
及之后的版本,省去了这个文件夹,让这个项目结构更加清晰。
我们需要配置时,需要手动在最外层,即跟public
文件夹同一级,创建vue.config.js
文件夹,用来放所有配置项。
我所配置的反向代理在devServer
里配置。
module.exports={
assetsDir:'static',
publicPath:'./',
devServer: {
host: 'localhost',
port: 8080,
proxy: {
'/mall': {
target: process.env.VUE_APP_BASE_URL_MALL,
changeOrigin: true,
ws: true,
pathRewrite: {
'^/mall': ''
}
},
},
},
}
如上的代码将/mall
代理成target
里面的环境(target环境,下面会做详细描述),需要注意,反向代理只是针对本地,测试和正式环境不需要代理,在做发请求封装的时候需注意。
配置环境
看下package.json
中的scripts
项,有几个环境,可以直接npm run
对应的环境即可。
如果想配置其他名称或者其他的环境,可以在vue.config.js
同一级添加
开发环境env.development
测试环境env.stage
正式环境env.production
在对应的环境文件里,配置如下
NODE_ENV=stage
VUE_APP_BASE_URL_MALL='http://test.cn'
其中NODE_ENV
配置的是环境,可以在后期根据环境进行区分本地/测试/正式环境
VUE_APP_
是定义相对应的环境变量,可以在反向代理和封装请求的时候使用。
以下是我对发请求进行的封装
import axios from 'axios'
export default function http({url,method='GET',data=null}) {
return new Promise((resolve, reject) => {
let wholeUrl=''
// development:本地;stage:测试;production:正式
if(process.env.NODE_ENV=='development'){
wholeUrl=`/mall${url}`
}else {
wholeUrl=`${process.env.VUE_APP_BASE_URL_MALL}${url}`
}
axios({url:wholeUrl,method,data}).then(res=>{
resolve(res)
}).catch(err=>{
reject(err)
})
});
}
在以后不管是发正式还是发测试,均不用手动修改环境,很便利。
如何配置vue-cli4.0的更多相关文章
- vue cli4.0 配置环境变量
温馨提示:本文只适用于vue-cli 3.0 及以上的版本哦~ ------------------正文开始------------------ 开发项目时,经常会需要在不同环境中切换.那么我们如何配 ...
- Vue CLI4.0版本正式发布了!一起来看看有哪些新的变化吧
Vue CLI4.0版本正式发布 这个主要的版本更新主要关注底层工具的必要版本更新.更好的默认设置和其他长期维护所需的微调. 我们希望为大多数用户提供平稳的迁移体验. Vue CLI v4提供了对Ni ...
- Vue cli4.0 代理配置
proxy: { '/service': { target: 'http://192.168.40.243:3000/', //对应自己的接口 changeOrigin: true, ws: true ...
- vue cli4.0 快速搭建项目详解
搭建项目之前,请确认好你自己已经安装过node, npm, vue cli.没安装的可以参考下面的链接安装. 如何安装node? 安装好node默认已经安装好npm了,所以不用单独安装了. 如何安装v ...
- vue 2.0 及 vue 3.0 rem配置
vue 2.0 配置 rem 首先先安装postcss-px2rem (百度可以) https://www.jianshu.com/p/e6476bbc2131 npm install postc ...
- 【Alpaca】.Net版开源配置中心 - 技术选型 Vue 3.0
是否可以用 Vue 3.0 现有的Vue 2.* 不推荐,坐等Vue 3.0出迁移工具吧,手动改的话工作量还是不小的 新项目 考虑下团队内对Vue + TS + VS Code的熟练程度.过程中你会遇 ...
- 新手入门指导:Vue 2.0 的建议学习顺序
起步 1. 扎实的 JavaScript / HTML / CSS 基本功.这是前置条件. 2. 通读官方教程 (guide) 的基础篇.不要用任何构建工具,就只用最简单的 <script> ...
- vue 2.0 无法编译ES6语法
# vue2.0 webpack 无法编译 ES6 语法 之前在使用 vue 1.x 时用 vue-loader@8.0.0 版本可以正常打包vue的代码,包括ES6语法也能正常转为ES5语法,但是当 ...
- vue cli3.0 结合echarts3.0和地图的使用方法
echarts 提供了直观,交互丰富,可高度个性化定制的数据可视化图表.而vue更合适操纵数据. 最近一直忙着搬家,就没有更新博客,今天抽出空来写一篇关于vue和echarts的博客.下面是结合地图的 ...
- 在webpack中配置vue.js
在webpack中配置vue.js 这里有两种在webpack中配置vue.js的方法,如下: 1.在main.js中引入vue的包: index.html: <!DOCTYPE html> ...
随机推荐
- 使用vscode搭建本地的websocket
首先在服务器方面,网上都有不同的对websocket支持的服务器: php - http://code.google.com/p/phpwebsocket/ jetty - http://jetty. ...
- SVN版本管理与大型代码上线方案(一)
SVN版本管理与大型代码上线方案(一) 链接:https://pan.baidu.com/s/1A3Iq3gGkGS27L_Gt37_I0g 提取码:ncy2 复制这段内容后打开百度网盘手机App,操 ...
- 解决windows10 安装不了.net 3.5问题
百度链接附上 详细操作参考使用说明 链接: https://pan.baidu.com/s/1vLXfuxP7qxujCFVB7xjxdg 提取码: seeu 如果还不能按照参考说明的安装 请直接在安 ...
- cd 切换
切换
- jq随机生成数字加字母的字符串
html代码: <dl class="row"> <dt class="tit"> <label for="title& ...
- Mysql 创建bit类型字段
- 【Dart学习】-- Dart之泛型
一,概述 Dart是一种可选的类型语言.Dart中的集合默认是异构的.换句话说,单个Dart集合可以托管各种类型的值.但是,可以使Dart集合保持同质值.泛型的概念可以用来实现同样的目的. 泛型的使 ...
- 实现Tab键的空格功能
有时使用编辑框需要用到按Tab键空两格,可能这时Tab键的功能不是空格而是页面切换等,这时需要设置: $(document).bind('keydown', function (event) { if ...
- python Pool并行执行
# -*- coding: utf-8 -*- import time from multiprocessing import Pool def run(fn): #fn: 函数参数是数据列表的一个元 ...
- 19、Linux命令对服务器内存进行监控
国际惯例,我们要知道什么是服务器的内存,内存有哪些作用.这里就不做过多介绍,Linux性能监控需要我们对底层要有一定的理解.下面我将会列出我常用的监控内存的工具. vmstat vmstat显示关于进 ...