angular - 如何根据环境从构建过程中排除组件。多变的?'

标签 angular typescript

我想从构建过程中排除一个组件。但这应该基于保存在 environment.prod.ts 中的环境变量。

我一直在搜索但没有找到可行的解决方案,大多数提示都在谈论诸如在 tsconfig.app.json 中添加 exclude 属性之类的事情。但即使这个建议可行,它也不能基于环境变量作为条件,因为在这种情况下这是不可能的 (tsconfig.app.json)。

如何使用环境中的条目的示例:

导出常量环境 = { 制作:真实, buildComponentX:假/真 };

任何提示或想法如何实现这样的过程?

最佳答案

我没有测试这个,这只是一个线索。

既然你的组件是在编译时捆绑的,为什么不基于查询创建一个包含你的组件的数组呢?

const components = [AppComponent, PublicComponent, RestrictedComponent, ProdComponent];
const componentsToExport = components.filter(component => component !== ProdComponent);
export componentsToExport;

现在在你的模块中,你可以导入这个数组并传播它:

@NgModule({
  imports: [...componentsToExport]
  // And the rest
})
export class AppModule {}

关于angular - 如何根据环境从构建过程中排除组件。多变的?',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50680644/

相关文章:

angular - 如何编写正确的 yaml 以在 Azure Devops 中部署 kubernetes 集群?

Angular - AuthGuard 正在重定向 Iframe

typescript - 如何计算 vscode 扩展中文件夹中的文件数量?

angular - 错误 TS2304 : Cannot find name 'Observable' Angularjs 2

java - 从 Angular 8 加密时,解密文本(AES 128 位)开头的垃圾值

javascript - 如何将以下 Json 对象转换为字符串,如下所示

Angular 2在路由时传递对象

angular - 错误 TS2339 : Property 'handleError' does not exist on type 'HeroService' with Angular

javascript - 遍历同一组件angular2的多个@ViewChild实例

javascript - Typescript:为通用 React 组件定义未声明的 props