首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >是否可以在运行时动态配置vue-cli中的publicPath?

是否可以在运行时动态配置vue-cli中的publicPath?
EN

Stack Overflow用户
提问于 2019-05-02 22:55:03
回答 1查看 2.7K关注 0票数 3

是否可以为vue应用程序(在vue.config中)动态更改publicPath?这意味着我想要动态地设置公共路径依赖于真实的url(一些域),例如,我只想进行一次构建,但将其用于staging和prod env (并对不同国家的资产使用不同的cdn-s等)。我发现webpack_public_path的目标是在运行时设置公共路径。但是如何将webpack_public_path与vueJS(vue-cli)一起使用呢?

webpack_public_path -对我不起作用。也许有人可以在repo中提供一个真实的例子?

预期结果:如果我在“生产”模式下构建一次应用程序,在多个环境中部署(工件)应用程序,每个环境在运行时设置自己的publicPath (cdn)。例如,对于欧洲的域测试上的prod工件-使用cdn: test.com -cdn-eupe.com,对于test.ua -使用另一个-test-cdn.ua等等。但我希望在运行时(可能基于当前域或类似的东西)在vue.config中更改此publicPath。所以我只能进行一次构建(因为它可能会花费太多的时间--进行多个构建)。

你能给出一些解决这个问题的建议吗?谢谢!

EN

回答 1

Stack Overflow用户

发布于 2019-05-02 23:14:54

您可以为__webpack_public_path__分配一个新值,但必须在应用程序启动之前执行此操作。

因此,最好的做法是将它放入自己的文件中,并在Vue本身之前导入它:

代码语言:javascript
复制
import './publicpath'
import Vue from 'vue'

然后在publicpath.js中,你可以这样做:

代码语言:javascript
复制
__webpack_public_path__ = window.your_public_path

当然,您也可以使用window.location来获取域或其他内容

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55955113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档