Vue.js 如何从vue.config.json中的外部config.json文件设置代理URL
如何从config.json外部文件设置代理URL,就像在通过web.config进行配置的.net应用程序中一样。 我使用的是vue cli样板文件(Vue2+webpack)+vuex+axios 我为此做了一些工作,但没有任何帮助,我导入config.json并使用其中的配置数据,但在构建包含output.min.js中的配置文件的Web包之后Vue.js 如何从vue.config.json中的外部config.json文件设置代理URL,vue.js,webpack,vuejs2,Vue.js,Webpack,Vuejs2,如何从config.json外部文件设置代理URL,就像在通过web.config进行配置的.net应用程序中一样。 我使用的是vue cli样板文件(Vue2+webpack)+vuex+axios 我为此做了一些工作,但没有任何帮助,我导入config.json并使用其中的配置数据,但在构建包含output.min.js中的配置文件的Web包之后 目前,,在运行生产服务器的构建或开发服务器的构建之前,我正在手动更改代码中的服务器URL,但需要单独使用config.json文件,以便我能够从生
目前,,在运行生产服务器的构建或开发服务器的构建之前,我正在手动更改代码中的服务器URL,但需要单独使用config.json文件,以便我能够从生产服务器上的配置文件更改代理URL。您可以使用
webpackChunkName
注释。这将创建一个单独的块,在构建之后可以更容易地对其进行更改
下面是在vue组件中使用它的代码
config.json:
vue组件:
导出默认值{
名称:“应用程序”,
数据:函数(){
返回{
配置:null
}
},
创建(){
导入(/*webpackChunkName:“config”,webpackMode:“lazy once”*/“/config.json”)。然后(r=>this.config=r.default);
}
}
组件外部
let-config;
导入(/*webpackChunkName:“config”*/'./config.js')
.then(r=>{config:r.default})
。然后(/*使用config*/)执行操作;
需要注意的一些事项:
-因为它不再是同一个包的一部分,配置包将需要来自网络请求,这意味着响应是异步的,因此您不能进行简单的赋值。这可能需要对代码进行不太重要的更改,因为在加载之前无法使用该值,因此依赖该值的任何其他代码都需要等待。
-无论您是在源代码中使用json还是js文件,生成的webpack包都将是js文件,并且几乎相同,尽管json版本稍小
配置包将如下所示
(window[“webpackJsonp”]=window[“webpackJsonp”]| |【】)。push([[“config”],{“7dc5”:函数(n){n.exports={abc:123,def:123}}]);
//#sourceMappingURL=config.26910bd8.js.map
其中{abc:123,def:123}
是现在应该很容易修改的数据部分
资源:
- 网页包代码拆分文档:
- 延迟加载,在vue中显示该功能
vue.config.js
,因此,由于它不是json,您可以在配置文件中包含逻辑,因此应该允许您从外部文件调用数据。我认为您没有得到要求。你知道捆绑和缩小吗?或者你有webpack的知识吗?如果你想在它被捆绑后能够轻松地更改它,请将它放入一个单独的js文件中(这样你就不需要ajax来加载它),然后使用vue/webpack代码拆分来生成一个单独的资源。谢谢@Daniel,这对我很有帮助
{
"abc": 123,
"def": 123
}