Vue 多环境配置方法

开发应用时环境有开发环境、测试环境、生产环境等,此时我们需要配置不同的环境,获取不同的apiUrl前缀,避免了频繁手动更改api.

1.安装cross-env插件

cross-env是跨平台设置和使用环境变量的脚本。
在大多数Windows命令行中在使用NODE_ENV = production设置环境变量时会报错。同样,Windows和Linux命令如何设置环境变量也有所不同。 使用cross-env可以设置在不同的平台上有相同的NODE_ENV参数。

npm install cross-env --save-dev

2.修改package.json的scripts

通过cross-env跨平台地设置环境变量(可以根据自己需求多定义几个环境)

1   "scripts": {
2     "dev": "cross-env NODE_PACK=development webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
3     "start": "npm run dev",
4     "build": "cross-env NODE_PACK=production node build/build.js"
5   },

3.config文件下新建api.js文件

通过process.env.NODE_PACK获取到自定义的环境变量,获取对应环境的API

 1 // 根据环境设置 BASE_API
 2 let apiUrl = ‘‘;
 3 switch(process.env.NODE_PACK) {
 4   case ‘production‘:
 5     apiUrl = ‘"https://it.bkjk.cn"‘;
 6     break;
 7   .......
 8   default:
 9     apiUrl = ‘"http://127.0.0.1:8000"‘;
10     break;
11 }
12 module.exports = apiUrl;

4.更改config下的dev.env.js和prod.env.js

dev.env.js

1 ‘use strict‘
2 const merge = require(‘webpack-merge‘)
3 const prodEnv = require(‘./prod.env‘)
4 const apiUrl = require(‘./api‘)
5
6 module.exports = merge(prodEnv, {
7   NODE_ENV: ‘"development"‘,
8   BASE_API : apiUrl
9 })

prod.env.js

1 ‘use strict‘
2 const apiUrl = require(‘./api‘)
3
4 module.exports = {
5   NODE_ENV: ‘"production"‘,
6   BASE_API : apiUrl
7 }

5.utils下的request.js

添加baseURL: process.env.BASE_API后src/api/api.js的接口只用后缀就行,会自动和baseURL拼接,/也可省略
1 // 创建axios实例
2 const service = axios.create({
3   baseURL: process.env.BASE_API, // api 的 base_url
4   timeout: 5000, // 请求超时时间
5 })

                                                             

原文地址:https://www.cnblogs.com/daidechong/p/11699446.html

时间: 2024-08-05 14:14:44

Vue 多环境配置方法的相关文章

【前端】vue.js环境配置以及实例运行简明教程

vue.js环境配置以及实例运行简明教程 声明:本文档编写参考如下两篇博客,是对它们的修改与补充,欢迎点击链接查看原文: 原文1:vue.js在windows本地下搭建环境和创建项目 原文2:Vue.js开发环境搭建 VUE.JS简介 何为Vue.js Vue.js(读音 /vju?/, 类似于 view)是一套构建用户界面的渐进式框架.与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计.Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合.另一方面,Vue

vue开发环境配置跨域,一步到位

本文要实现的是:使用vue-cli搭建的项目在开发时配置跨域,上线后不做任何任何修改,接口也可以访问,前端跨域解决方案 production:产品 生产环境 development:开发 开发环境 1.开发环境设置跨域 使用工具:vue-cli自带的配置 配置目录 /config/index.js //自行复制黏贴 proxyTable: { '/apis':{ target: 'http://10.1.63.26:19080/', // 后台api changeOrigin: true, //

vue 项目环境配置(待补充)

1.下载nodejs 2.github或者码云配置 3.git clone github代码地址 4.vue-cli的安装: npm install -g @vue/cli 5.使用vue ui命令进行可视化环境配置 6.将代码提交到github或码云 使用的命令: 1. git add . 2.git commit -m "描述" 3.git push 原文地址:https://www.cnblogs.com/lalavender/p/10434426.html

vue多环境配置

在上级我们搭建完成了vue的多页面入口,但是在实际开发中,还是有很多现实需求,例如开发环境和生产环境的区分. 实际上Vue-cil已经帮我们初步设置好了两种环境,我们只需要在其基础上稍作修改 需求: 生产环境全部静态资源全部使用固定的cdn. 首先找到项目下的 /config/dev.env.js /config/prod.env.js 这两个文件就是针对生产环境和发布环境设置不同参数的文件 我们在dev.env.js中加上开发环境的路径 值一定要加上双引号,否则会被webpack视为变量而报错

vue开发环境配置

* 确认node安装好, npm可用 node -v npm -v * 安装cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org * 安装vue-cli cnpm install -g vue-cli vue -V * 创建项目my-vue vue init webpack my-vue 初始化项目中有一步问到是否创建router,选择是 这样就有了 vue-router可以配置路由 Vue.use(Router)

Visual Studio中C++工程的环境配置方法

在Visual Studio的C++工程设置 1.添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录. 2.添加文件引用的lib静态库路径:工程---属性---配置属性---链接器---常规---附加库目录. 3.添加工程引用的lib文件名:工程---属性---配置属性---链接器---输入---附加依赖项 4.添加工程引用的dll动态库:把引用的dll放到工程的可执行文件所在的目录下. 5.配置输出目录:工程---属性---配置属性---常规---输

windows下apache+php+mysql 环境配置方法

一 准备 1 下载apache http://httpd.apache.org/download.cgi#apache24 httpd-2.2.22-win32-x86-openssl-0.9.8t.msi openssl表示带有openssl模块,利用openssl可给Apache配置SSL安全链接 2 下载php http://windows.php.net/downloads/releases/archives/ php-5.3.5-Win32-VC6-x86.zip 下载vc6版本 VC

vue项目环境配置

1.安装node.js    http://nodejs.cn/download/下载并安装 查看是否安装成功 node -v 2.安装国内的淘宝镜像 npm install -g cnpm --registry=https://registry.npm.taobao.org 3.以上完成后,安装vue-cli脚手架构建工具 npm install --global vue-cli 4.创建一个基于webpack模板项目 ,my-project为项目名.运行初始化命令的时候回让用户输入几个基本的

ES6-浏览器运行环境配置方法

现在ES6用的越来越多,想要学习使用ES6,只需简单搭建引入几个js即可运行ES6代码 但是需要基本的服务器环境下运行(如http://10.12.8.161:8047/js-test/export/export.html 这样服务器环境访问). 引入这几个js <script type="text/javascript" src="./bower_components/jQuery/dist/jquery.min.js"></script>