【问题标题】:Managing JavaScript config files for different build environments (like QA, UAT, Production)管理不同构建环境(如 QA、UAT、生产)的 JavaScript 配置文件
【发布时间】:2015-12-14 19:40:07
【问题描述】:

因此,您正在使用静态服务的 JavaScript 构建独立的单页应用程序。它连接到 API。

您的应用程序在其main.js 中有一个 JSON 对象,如下所示:

var config = {
 apiPath: 'http://dev.api.example.com',
 appTitle: 'hello'
};

您使用 Grunt 创建一个发布版本,这会将您的所有 SASS、ES6、AMD 模块等代码与此配置对象一起转换为一个或两个 JavaScript 文件。

您的生产 API url 是 http://api.example.com,当您进行发布构建时,您只想更改配置中的这个值。 (也许您也想更改其他配置参数)。你有一个发布配置

var config = {
 apiPath: 'http://api.example.com'
};

如何在构建期间根据不同类型的发布环境更改 JavaScript 配置文件。请注意,我想将发布配置合并到默认配置中,not 使用所有设置维护完全独立的文件。虽然有用于设置构建模式的 grunt 插件,但我还没有发现任何能够更新配置文件的插件,只有 hack 可以更改指向的文件。

ASP.NET 有 web.config 转换,例如,发布转换中的任何属性都会覆盖打包时的“默认”配置。这样的工作流是否存在使用 grunt 之类的?

【问题讨论】:

标签: javascript build-process single-page-application release-management


【解决方案1】:

最后我自己解决了这个问题,结合使用环境变量和一个名为Confidence 的惊人节点,您可以将所有不同的 envs 配置设置放在一个文件中,并将它们解析为基于单个配置在过滤器上(例如环境变量) - 然后可以使用 WebPack 等工具将这些注入到构建过程中。

【讨论】:

    猜你喜欢
    • 2018-11-09
    • 2018-08-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-21
    • 2019-08-09
    • 2012-11-25
    • 2022-07-04
    • 1970-01-01
    相关资源
    最近更新 更多