需要一个配置文件,能在项目打包(build)时不被打包,方便修改,同时项目刷新时读取改配置。

实现方法如下:

1.在项目的static目录下创建project.config.json文件(名称随意,建议带上config关键字,易于辨识)

内容为json格式:

 {
"serviceUrl": "http://localhost:30001/service/api/",
"baseUrl": "https://192.168.1.11/data/",
"accessToken": "pk.eyJ1Ijf1w",
"geoFenceRadius": 20,
"retrieveInterval": 5000
}

2.在main.js中读取该配置

读取到配置后放入 Vue.prototype.baseConfig中,(baseConfig名称可自定义)

为了保证能在vue实例中配置随时可用,把vue的创建放到了axios读取配置的回调里面。

代码如下:

 /* eslint-disable no-new */
axios.get('./static/project.config.json').then((result) => {
Vue.prototype.baseConfig = result.data
new Vue({
el: '#app',
router,
components: {App},
template: '<App/>'
})
}).catch((error) => {
console.log('get baseConfig error...' + error)
})

注意:

读取配置信息用到了axios,需先安装并引入

 // 命令行安装
npm install axios -S
// main.js 引入
import axios from 'axios'

3.使用配置

a.组件中使用,因为baseCofig已放入Vue.prototype中,组件中不需要引入,直接使用this获取

 this.baseConfig.baseUrl

b. js文件中使用,需要先引入Vue,通过Vue.prototype获取配置

 import Vue from 'vue'
let basetConfig = Vue.prototype.baseConfig //注意该行应放在export里面,否则获取不到值

4.build后可以在static目录下看到添加的配置文件

Vue项目创建build打包后可修改的配置文件的更多相关文章

  1. 记录下自己VUE项目用Hbuider打包后启动白屏问题

    刚用VUE做项目,之前测试时vue创建的自身项目打包都是启动OK没问题.今天打包自己的时,启动一直白屏.折磨了好久,百度了一堆.终于找到了方法. 首先是在config/index.js里面 build ...

  2. vue项目使用hbuilder打包后,真机测试白屏

    在命令行直接运行 npm run build后,生成的dist文件中,直接打开index.html文件 Tip: built files are meant to be served over an ...

  3. Vue项目开发之打包后背景图片路径错误的坑

    在开发vue项目的过程中,使用浏览器进行预览的时候所有图片的路径是没有任何问题的,但是在打包后传到服务器上,在微信端查看背景图片时,background的图片竟然不显示,img标签里的图片却是正常展示 ...

  4. Vue项目用webpack打包后,预览时资源路径出错(文末有vue项目链接分享)

    最近用vue写了一些项目,项目写完之后需要打包之后才能放到网上展示,所以在这里记录一下项目打包的过程以及遇到的一些问题. --------------------------------------- ...

  5. vue项目用webpack打包后跨域问题

    在app.js的最开始加上 app.all('*', (req, res, next) => { res.header("Access-Control-Allow-Origin&quo ...

  6. vue项目在webpack打包后背景图片显示不了

    加上 publicPath:'../../'即可

  7. vue build打包后css里的图片路径404不正确的问题

    vue build打包后css里的图片路径404 在vue-cli项目中build/utils.js中找到如下代码块,添加 publicPath:’../../’ if (options.extrac ...

  8. VUE项目用hbuilder 打包为手机APP

    一.测试项目是否可以正确运行    指令:npm run dev 首先我们先建立一个vue的项目,本人用的是vue-cli随便建立的,然后运行项目 不必非得是像我这样的,这一步的目的只是测试一下咱们的 ...

  9. Python Django Vue 项目创建

    环境安装忽略,可参考前面个篇幅介绍 1.创建项目 打开pycharm 终端,输入如下,创建项目 # 进入pycharm 项目目录下 cd pyWeb django-admin startproject ...

随机推荐

  1. java源码 -- AbstractMap

    AbstractMap抽象类实现了一些简单且通用的方法,本身并不难.但在这个抽象类中有两个方法非常值得关注,keySet和values方法源码的实现可以值的学习. 抽象类通常作为一种骨架实现,为各自子 ...

  2. SrpingBoot入门到入坟03-基于idea快速创建SpringBoot应用

    先前先创建Maven项目然后依照官方文档再然后编写主程序写业务逻辑代码才建立好SpringBoot项目,这样太过麻烦,IDE都支持快速创建,下面基于idea: 使用Spring Initializer ...

  3. Jupyter修改工作目录(Anaconda环境)

    Anaconda安装时未添加环境变量 1.打开Anaconda Prompt 输入jupyter notebook --generate-config (base) C:\Users\Sroxi> ...

  4. (一)CXF之发布第一个WebService服务

    一.CXF入门 1.1 前提 Apache CXF 是一个开源的 Services 框架,CXF 帮助您利用 Frontend 编程 API 来构建和开发 Services ,像 JAX-WS .这些 ...

  5. 存储过程、插入数据后直接过去主键id

    DECLARE @sql nvarchar() DECLARE @cou int SET @sql='INSERT INTO people values('''+'xiaohong'+''');sel ...

  6. 请问IOS中做一个手机网站的app壳复杂吗?

    公司开发了一个平台,手机网站已经做出来了,想开发一个苹果应用app,但公司没人会IOS开发,为了减小成本,现在想直接做一个壳来加载手机网站,请问在ios中复杂吗?是否有相应的控件直接加载url就行? ...

  7. SQL Server 2017命令创建新账户(test-user),并分配数据库权限

    -- 1. 创建登录账号USE [master];GOCREATE LOGIN [test-user] WITH PASSWORD = 'xysu7SZ193SNX6E{{HxubPE3}vr',DE ...

  8. 二、运行时JVM结构组成及作用

    二.运行时JVM结构组成及作用 程序计数器 是否共享:否,线程私有,每个线程有1个独立的程序计数器! 所处位置:线程私有的内部区域 生命周期:与线程绑定 主要作用: 当前线程执行字节码的行号指示器!  ...

  9. 关于el-select 单选与多选切换的时候报错的解决办法

    错误: 出错原因: 估计是单选切换到多选的时候元素没有刷新的原因,猜测 解决办法: 1.在el-select上面加上一个条件判断, 条件判断中绑定一个变量值 例如 :multiple="is ...

  10. linux shell数值比较和字符串比较

    说明: 1. 把字符串当成整型进行比较,由于abcd等字符对不上0123当程序尝试去转成二进制时无法完成转换,所以用于数值比较的运算不能用于字符串比较:但是把整型当成字符串进行比较,0123这些数值完 ...