从webpack打包结构中我们知道,vue中有一个存放外部资源的文件夹static,它里面的文件是不会被打包编译的,所以我们就可以利用外部引入js的方式将我们的想要的数据在index.html中以js文件的方式引入,然后就可以全局使用。

具体的方法如下:

1.在项目中找到static文件夹,在里面创建一个配置文件,起名为config.js

┌── build
├── config
├── node_modules
├── src
├── static
│ ├── config.js // 配置文件

├── index.html:

2.然后在创建的config.js配置文件中,声明一个对象api,将它赋值给window,对象名字随便取,只要不占用关键字即可,对象中存放你所需要配置的各种路径和数据,如下:

window.api = {
apiURL: 'http://xxx.xxx.xxx.xxx:xxxx',
websocketURL: 'ws://xxx.xxx.xxx.xxx:xxxx/websocket'
}

3.将此配置文件在index.html 文件中引入

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>测试</title>
<script src="static/config.js"></script>
</head>
<body>
<div id="app"></div>
</body>
</html>

4.使用到这里相信会一点vue基础知识的同学都知道怎么在项目中使用我们配置的数据,比如我们要配置axios请求路径如下:

(这里是因为我配置了开发环境,而且在开发环境获取不到window.api,所以只有在打包后才好使)

const service = axios.create({
// baseURL: process.env.BASE_API, // api的base_url
baseURL: process.env.NODE_ENV === 'production' ? window.api.apiURL : process.env.BASE_API,
timeout: 20000
})

到此,项目的配置文件就已经设置好了,这样测试环境和正式环境的切换,或以后后台服务器要迁移和域名更换等,就可以直接在配置文件中修改,而不用重新打包部署。

需要注意一点,每次更改了配置文件,就需要重新进入一下项目,也就是重新刷新一下首页,让配置文件重新引入一次,这样修改才会生效。

最新文章

  1. tableView异步下载图片/SDWebImage图片缓存原理
  2. IO多路复用及ThreadingTCPServer源码阅读
  3. 字符串与byte数组转换
  4. 动态子类化CComboBox以得到子控件EDIT及LISTBOX
  5. Shared_from_this 几个值得注意的地方
  6. Git和Github使用
  7. Java数据结构和算法(三)——冒泡、选择、插入排序算法
  8. Mysql(三)-2:数据类型
  9. mongodb系列之--分片的原理与配置
  10. loadrunner 基础-学习笔记一
  11. rem、em 、font-size随着屏幕大小的改变而改变
  12. Android忘记锁屏密码如何进入手机?
  13. (笔记)电路设计(十一)之DC/DC电源转换方案设计应用
  14. ORACLE学习笔记 translate,REGEXP_replace
  15. 设计模式之模版方法模式(Template Method Pattern)
  16. http请求,HttpClient,调用短信接口
  17. 解决 同时安装 python3,python2环境时,用pip安装 python3 包
  18. 【Python】高阶函数
  19. 利用 Nginx 做反向代理解决微信小程序业务域名限制问题
  20. centos下php环境安装redis

热门文章

  1. 前端知识(二)04-vue-element-admin-谷粒学院
  2. 前端知识(一)06 element-ui-谷粒学院
  3. Python数据模型与Python对象模型
  4. django模板中导入js、css等静态文件
  5. Linux系统设置 SSH 通过密钥登录
  6. (转载)微软数据挖掘算法:Microsoft 聚类分析算法(2)
  7. js--数组的find()和findIndex()方法的使用介绍
  8. Java执行Dos-Shell脚本
  9. Ajax(form表单文件上传、请求头之contentType、Ajax传递json数据、Ajax文件上传)
  10. (27)Vim 3