我想知道是否可以让Vue应用读取外部配置文件.我想象我在其中部署应用程序,将应用程序与配置文件一起发布;此时,应该可以在不必重新构建整个应用程序的情况下更改外部文件中的配置.有什么方法可以达到这个结果吗?现在我使用的是一个单独的Vuex应用store ,但如果不重建整个应用程序,我就无法更改配置.

我忘了提到这个项目是用Vue CLI制作的.

推荐答案

您可以从公用文件夹获取config.json,然后在resolve回调中加载Vue应用

将配置密钥放入/public/config.json个文件中

{
  "KEY": "value"
}

然后在你的/src/main.js文件中

fetch(process.env.BASE_URL + "config.json")
  .then((response) => response.json())
  .then((config) => {
       Vue.prototype.$config = config
       new Vue({
         router,
         store,
         render: (h) => h(App)
       }).$mount("#app")
  })

您将在应用程序范围内加载配置.然后你就可以使用

mounted() {
  this.$config.KEY // "value"
}

在Vue组件中

Vue.js相关问答推荐

如何将$validator实例注入到使用组合API语法的Vue2.7应用程序中

为什么 Vue 在将设置脚本中的计算(computed)属性渲染到模板时找不到变量

:deep() 带有嵌套 scss 规则的语法

如何在 vuejs 中导入和使用本地 .csv 文件

如何在 vue 组件中定义变量? (Vue.JS 2)

vuejs vue-cli 如何使用 console.log 而不会出现任何错误

使用 vue-cli 遇到无法推断解析器错误

如何将 ASP.NET Core 2.1 与 Vue CLI 3 集成?

在textbox文本框 VueJS 2 中键入时搜索列表

如何获取 Vue 路由历史记录?

包含 Vue.js v-if 和 v-for 指令的 HTML 标签在加载时flash

如何在某些异步数据(在 Vuex 存储中)加载之前防止任何路由?

Vue:从 Vue 实例更新组件数据

数据更新后触发 Vue.js 事件

在 Vuejs 中计算 DOM 元素之间距离的最佳方法是什么?

在 vue/vuex(/flux?) 中使用 ES6 类是一种反模式吗?

如何在 Vue.js 应用程序中正确下载 Excel 文件?

使用 Firebase Auth for Google 将匿名用户转换为注册用户

Vue CLI 3 sass-resources-loader - Options.loaders 未定义

依赖关系甚至在 package.json 和 node_modules 中都没有定义