【发布时间】:2019-03-09 13:47:36
【问题描述】:
在 Angular 6 中,每个组件都有两个不同的模板 .html,我们需要根据部署的环境对其进行更改。
我们正在寻找这样做的最佳实践。
考虑解决方案:
- 无法将 var 传递给组件装饰器。
- 由于 Angular CLI 6 它可能生成多个项目(ng generate --application)。
最后一点可能是一个解决方案,但我们需要共享相同的路线。
【问题讨论】:
-
更改每个构建的 url?你也尝试过使用 ngif 的吗?
-
您最安全的选择是使用 webpack 或类似的预处理工具将组件的
templateUrl重写为另一个在通过其余管道之前。利用一些命名约定(例如cmp-name.template.a.html和cmp-name.template.b.html)。 -
使用
ngIfs 会用不必要的代码使应用程序膨胀。你不能摇树模板(还)。 -
@LazarLjubenović 谢谢。我们之前看到过这种方法,这是我们第一次接触,但一些用户不推荐它。相反,他们坚持建议使用 cli commnad 作为最佳实践生成不同的项目,因为这违背了角度原则。但是这种方式的主要问题应该是每个项目共享相同的路由。
标签: angular routing components command-line-interface multiple-projects