如何将配置文件导入Vue.JS+;Vuex

如何将配置文件导入Vue.JS+;Vuex,vue.js,vuex,Vue.js,Vuex,在调用Vue之前,我正在main.js文件中设置配置: Vue.prototype.$api_url = process.env.NODE_ENV === 'production' ? 'https://api.xxx.com' : 'https://yyy.test:8443' 如果我在任何Vue文件中访问此.api_url,它都可以工作 但是在store.js(Vuex)中,它是另一个呈现的Vue实例,因此我无法访问这个 如何在文件中设置configs并Vue.use(configs.js

在调用Vue之前,我正在main.js文件中设置配置:

Vue.prototype.$api_url = process.env.NODE_ENV === 'production' ? 'https://api.xxx.com' : 'https://yyy.test:8443'
如果我在任何Vue文件中访问
此.api_url
,它都可以工作

但是在store.js(Vuex)中,它是另一个呈现的Vue实例,因此我无法访问
这个

如何在文件中设置configs并
Vue.use(configs.js)

为了在
main.js/store.js
中获取其变量,我应该在configs文件中做什么


谢谢。

制作一个独立的config.js文件,并从该文件导出配置对象。并在需要配置的地方导入配置。 如果希望在所有Vue组件中提供相同的配置,也可以将该配置分配给Vue的原型

更新:

因此,以下是如何做到这一点:

在您的config.js中

let config;

if (process.env.NODE_ENV === "production") {
  config = {
    $api_url: "https://api.xxx.com",
    timeoutDuration: 30000,
    someOtherProps: 'xyz'
  };
} else {
  config = {
    $api_url: "https://yyy.test:8443",
    timeoutDuration: 1000,
    someOtherProps: 'abc'
  };
}

export { config }
在main.js中

import { config } from 'config';

Vue.prototype.appConfig = config
使用
this.appConfig.$api\u url
在.vue文件中使用的任何方式

在your store.js中

import { config } from 'config';

使用
config.$api\u url
任何您想使用的方式

谢谢,您能举个例子吗?下面是我尝试做的:
导出函数VueConfigs(){return{$api\u url:process.env.NODE\u env==='production'?'https://api.xxx.com' : 'https://yyy.test:8443“,}}
这很好,但有时您不想在SCM中放置令牌和东西。似乎我们有一个策略,我们使用
.env.development
.env.development.local
(未保存到git),然后Webpack会处理它。但这假设您正在构建并部署到特定的实验室,并且这些值存在于SCM或某些搜索的一部分,并替换为CI/CD。