是否可以为vue应用程序动态更改publicPath(在vue.config中)?这意味着我想将公共路径设置为动态取决于真实的url(某些域),例如我只想制作一个建筑,但将其用于登台和制作环境(并对不同国家/地区的资产使用不同的CDN-S等)。 我发现webpack_public_path旨在在运行时设置公共路径。但是如何将webpack_public_path与vueJS(vue-cli)一起使用?
webpack_public_path-不适用于我。也许有人可以在回购中提供真实的例子?
预期结果:如果我在“生产”模式下构建了一个应用程序,则在多个环境中部署(工件)应用程序,每个环境在运行时(cdn)设置自己的publicPath。 例如。用于欧洲域test.com上的产品工件-使用的cdn:test-cdn-europe.com,用于test.ua-用于another-test-cdn.ua,依此类推。但是我想在运行时在vue.config中更改此publicPath(可能基于当前域或类似的东西)。因此,我只能进行一次构建(因为可能花费太多时间-进行多次构建)。
您能提出解决此问题的任何建议吗?谢谢!
答案 0 :(得分:0)
您可以为__webpack_public_path__
分配一个新值,但是必须在应用程序本身启动之前这样做。
所以最好将其放入自己的文件中,然后在Vue本身之前将其导入:
import './publicpath'
import Vue from 'vue'
然后在publicpath.js
中,您将执行以下操作:
__webpack_public_path__ = window.your_public_path
您当然也可以使用window.location获取域或其他内容