【问题标题】:How to inject commit hash in environtment.ts in angular-cli如何在 angular-cli 中的 environment.ts 中注入提交哈希
【发布时间】:2017-03-03 00:30:03
【问题描述】:

是否可以异步生成环境对象?

原因:我想在我的应用程序中使用可用的提交哈希。想法是使用environment.ts 文件。但是要获得当前的提交哈希,我需要异步调用(例如使用git-rev)。

我尝试使用 process.env 从环境变量中注入变量:$ VERSION=123 ng serve

declare var process: any;

export const environment = {
  production: false,
  version: process.env.VERSION
};

但这会导致未定义的版本。

【问题讨论】:

  • 您可以在环境文件中进行异步调用,但我认为这不会帮助您获得正确的提交哈希,因为它将在运行时在用户浏览器中进行评估。为什么要在环境文件中有提交哈希?
  • 哦,我不知道它是在运行时评估的。认为它在构建过程中进行了评估。还有其他方法可以将提交消息注入我的项目吗?假设我想在某个组件中显示提交消息。
  • 您是在将您的开发环境耦合到您的组件还是任意显示提交消息?如果是先验,那么我会考虑某种将提交写入环境文件的提交挂钩。
  • 我使用 SentryIO 作为错误处理程序,它允许您指定当前运行的版本。我想在那个版本中包含提交哈希。

标签: angular angular-cli


【解决方案1】:

看看这个问题:How to include git revision into angular-cli application?

github上也有关于这个相关主题的讨论,它会更容易添加将环境变量传递给environment.ts的可能性:https://github.com/angular/angular-cli/issues/4318

【讨论】:

    猜你喜欢
    • 2011-03-27
    • 1970-01-01
    • 2023-03-16
    • 2020-02-27
    • 2012-02-19
    • 2011-11-22
    • 2010-10-31
    • 2017-09-15
    相关资源
    最近更新 更多