Vue 2.x 3.x 配置项目开发环境跟线上环境
先找到package.json (这是nuxt版的vue 可能会跟一般vue不一样 当然总体上差不多的)
"scripts": {
"dev": "cross-env NODE_ENV=development nuxt",
"pro": "cross-env NODE_ENV=production nuxt",
"pre": "cross-env NODE_ENV=prerelease nuxt",
"build-prod": "cross-env NODE_ENV=production nuxt build",
"build-prer": "cross-env NODE_ENV=prerelease nuxt build",
"build-test": "cross-env NODE_ENV=development nuxt build",
"start": "nuxt start",
"generate": "nuxt generate"
},
环境篇(了解项目环境)
dev环境 "dev": "cross-env NODE_ENV=development nuxt" 预生产环境 "pre": "cross-env NODE_ENV=prerelease nuxt", 生产环境 "pro": "cross-env NODE_ENV=production nuxt",
2.Prod上线 环境篇 命令行(num run build)
测试版上线打包 "build-test": "cross-env NODE_ENV=development nuxt build", 预生产上线打包 "build-prer": "cross-env NODE_ENV=prerelease nuxt build", 生产版上线打包 "build-prod": "cross-env NODE_ENV=production nuxt build",
关于package.js 的命令讲解完了接下来解释一下 NODE_ENV 就是项目全局的变量可自定义,定义的地方就是上门我们解读我们启动项目package.js命令里面(上面列举的"环境篇NODE_EVN = "自定义名称"
使用篇 (既然配置好了环境变量那么该怎么使用呢?)
1.本地环境Axios请求的配置
process.env.NODE_ENV 就是我们定义变量 例如在配置项目本地开发请求跟线上请求的时候做个判断
if (process.env.NODE_ENV == 'production') {
//线上
axios.defaults.baseURL = "https:xxx.xxx.xxx"
} else if (process.env.NODE_ENV == 'development') {
//本地
axios.defaults.baseURL = 'http://192.168.1.1:80'
} else {
//预发布
axios.defaults.baseURL = 'http://xxx.xxx.1.1:80' //
}
2. 线上环境的请求配置
一般来说线上项目可能会有涉及到跨域的问题
在vue的配置文件可以设置 porxy跨域代理 (为什么axios不能跨域这个问题自己百度)
vue项目一般来说依赖Node启动 vue跨域的原理就是在当前环境启动一个Node服务器 然后服务器跟服务器之前访问解决了跨域问题
VueCli 2.x的项目的配置文件在根目录的 config - index.js 具体配置请自行百度
* 特别说明一下VueCli3.x 的环境配置 需要自己在根目录新建.env.development 或者.env.production 文件
// .env.development NODE_ENV = 'development' VUE_APP_CURRENTMODE = 'dev' VUE_APP_BASEURL = '本地开发api地址' //例如 VUE_APP_BASE_API='192.xxx.xxx.1:80'
新出的VueCli3搭建的项目运行很快不得不点赞
VueCli 3.x的跨域配置 根目录 自行新建个 vue.config.js文件 自行配置 线上/api 预发布 /pre
module.exports = {
// 修改的配置
// 将baseUrl: '/api',改为baseUrl: '/',
baseUrl: '/',
devServer: {
proxy: {
'/api': {
target: 'http://www.example.org',
changeOrigin: true,
ws: true,
pathRewrite: {
'^/api': ''
}
}
}
}
}
Vue 2.x 3.x 配置项目开发环境跟线上环境的更多相关文章
- express框架开发接口部署线上环境PM2
1.PM2介绍 PM2是一个线上环境下,用于启动nodejs进程守护的工具,用来保证服务的稳定及分摊服务器进程和压力. 2.下载安装 npm install pm2 -g => pm2 --v ...
- 92.vue---新手从本地项目开发到服务器线上运行爬坑。
因为我做的是后台,所以不用做SEO 参考 本项目的定位是后台集成方案,不太适合当基础模板来进行二次开发.因为本项目集成了很多你可能用不到的功能,会造成不少的代码冗余.如果你的项目不关注这方面的问题,也 ...
- vue编译环境和线上环境url切换
新建一个配置js,导入到接口请求管理类,可以自动根据环境切换if (process.env.NODE_ENV == 'development') { baseUrl = ''; }else{ base ...
- 基于Vue、web3的以太坊项目开发及交易内幕初探 错误解决总结
基于Vue.web3的以太坊项目开发及交易内幕初探 本文通过宏观和微观两个层面窥探以太坊底层执行逻辑. 宏观层面描述创建并运行一个小型带钱包的发币APP的过程,微观层面是顺藤摸瓜从http api深入 ...
- vue本地和线上环境(域名)配置
vue本身为运行脚手架项目自家搭载了一个nodejs后台环境,本地可通过proxyTable来处理跨域问题,但是上线(或生产环境)之后改域名真是一件麻烦的事情,所以进行一些配置. config/ind ...
- wechat开发笔记之1.线上环境搭建与测试
Wechat开发笔记 线上环境搭建: 申请一个wechat公众平台. 手机个人微信可以用webwechat来测试. Website:https://web.weixin.qq.com/ 手机客户端扫一 ...
- 由定时脚本错误以及Elasticsearch配置错误引发的Flink线上事故
近期接手离职同事项目,突然遇到线上事故,Flink无法正常聚合数据生成指标. 以下是详细的排查过程: 问题复现 清晨,运维报告Flink数据分析模块无法正常生成指标数据. 赶紧登陆Flink所在机器, ...
- SharePoint Server 2013开发之旅(三):为SharePoint Server配置App开发、部署、管理环境
上一篇我讲解了如何利用微软提供的Office 365开发人员网站,进行在线的SharePoint App开发,这当然是不错的一个选择,因为你可以快速地进行开发和调试.(仅仅针对App开发而言).但是, ...
- 每天一点点之vue框架开发 - 部署到线上
1.在项目根目录下运行如下命令 npm run build 会生成一个dist目录, 2.然后将dist目录上传至服务器就可以访问页面了,不需要配置vue环境了.
随机推荐
- 服务器时间误差导致的google sign-in后台验证错误(远程调试java程序)
https://developers.google.com/identity/sign-in/web/backend-auth import com.google.api.client.googlea ...
- XSS Payload深入分析整理
几种加载XSS Payload的不常见标签 众所周知,一种调用JavaScript的方法就是在元素类型上使用事件处理器(Event Handler),通常的一种方法类似: <img src=x ...
- win10-搭建git工具
.下载安装 git .生成 SSH 密钥 ssh-keygen -t rsa -C "email@com" -b 4096 .配置gitlab 增加 SSH 密钥. .配置 git ...
- OpenvSwitch系列之ovs-vsctl命令使用
Open vSwitch系列之一 Open vSwitch诞生 Open vSwitch系列之二 安装指定版本ovs Open vSwitch系列之三 ovs-vsctl 命令使用 OpenvSwit ...
- iOS编译Unity3d文件报错 Permission denied
最近在尝试Unity3d的使用,毕竟Unity可以很好的编译出iOS代码,只用我们正常进行打包就好了. 这里遇到了个问题,分享一下. Archive快结束的时候,报了三个错误,类似于 /Users/s ...
- 身为一个 CS专业的留学生,你还在为堆积如山的编程assignment而发愁吗?
每个人都渴望圆梦,当我们看见梦想在别人身上实现时,总在抱怨幸运之神为何不眷顾自己:其实更多的时候,梦想就在你身边的不远处,只要你迈出正确的步伐. 记得刚入大学时,意气风发.我以全班前几名的优异成绩考入 ...
- 包管理-rpm
rpm包管理 程序源代码---->预处理---->编译---->汇编---->链接 数据处理 转为汇编代码 进行汇编 引入库文件 静态编译:. ...
- scrollWidth、clientWidth 和 offsetWidth
scrollWidth:对象的实际内容宽度,不包括边线宽度,会随对象中内容超过可视区而变大. clientWidth:对象内容的可视区的宽度,不包括边线宽度,会随对象显示大小的变化而变化. offse ...
- SpringCloud之Eureka服务注册与发现(一)
一 Eureka的基本架构 Spring Cloud 封装了 Netflix 公司开发的 Eureka 模块来实现服务注册和发现(请对比Zookeeper). Eureka 采用了 C-S 的设计架构 ...
- Windows下NFS服务器SFU设置(可以共享linux系统)
一.安装SFU1.下载软件SFU http://download.microsoft.com/download/a/1/c/a1ca7af1-a6e3-46e7-874a-4c5d8c0fb3b7/S ...