【发布时间】:2016-08-02 12:13:49
【问题描述】:
我们有一个使用 Webpack 捆绑用于生产的 node.js 应用程序。
我们的问题是如何在已经有bundle后添加动态配置,而不需要重新bundle?
在服务器端,我们可以只使用节点环境变量,但是如何为客户端包做到这一点?具体来说,我们需要告诉浏览器模块要连接到哪个 api 服务器地址。
拥有一个带有配置的 js/json 文件会导致配置值被注入到包中,因此之后无法更改(以一种舒适的方式,无需打开包文件并手动查找和替换)。
使用 express-expose 之类的东西不是我们想要的,因为它会导致另一个网络请求获取数据,而且我们的服务器地址是动态的。
node-config 等,不能在客户端工作
【问题讨论】:
-
检查这一点是否有解决方案:stackoverflow.com/questions/35408898/…
-
@ViniciusVieira 看起来它展示了如何使用浏览器不可用的环境变量
-
你不能使用不同的脚本来为你需要的状态创建不同的包吗?
-
问题是我们不希望它被捆绑,因为它不是动态的,并且捆绑后不能轻易让客户更改它