Angular2,组件的多个视图?

时间:2016-02-23 07:44:25

标签: angular angular2-template angular2-directives

您好我有一个网页,其中有多个布局要切换到。与codepen.io相似。在angular2中执行此操作的最佳方法是什么?说我有4个布局。我可以放* ngIf =“layout1”并放置第一个布局然后* ngIf =“layout2”并放置第二个布局,依此类推。但这是最好的方式吗?请注意,更改布局时,html和css都会更改。

1 个答案:

答案 0 :(得分:1)

当有多个或两个选项时,还有ngSwitch方便。 这样,您就拥有了一个组件中的所有内容我认为如果布局之间的切换很常见且经常在一个用户会话中完成,那么这是一个很好的选择。

如果这主要是一次性决定(例如基于屏幕尺寸),则以下选项之一可能更适合。

您也可以使用DynamicComponentLoader。每个布局都打包在一个组件中,您可以添加适合当前选择的组件 另请参阅http://www.syntaxsuccess.com/viewarticle/loading-components-dynamically-in-angular-2.0

另一种方法是使用路由器根据Url或Url参数添加组件 另请参阅https://angular.io/docs/ts/latest/guide/router.html