以角度2创建可重用的组件

时间:2016-08-17 20:12:03

标签: angular components

我想创建一个显示某种弹出模式的'登录组件'。 考虑一下我的应用程序中有很多可以调用此模态的地方,什么是击球手方法: 1.在任何地方放置“登录组件”我都会使用它,尽管它到处都是一样的。 2.将它放在顶级组件中,并使用某种事件监听器显示和隐藏它。

在第一种方式中,我封装了组件以显示它所需的内容并轻松控制其生命周期。 在第二种方式中,我避免重复我的自我并将其称为每个组件。

感谢。

2 个答案:

答案 0 :(得分:1)

更好的方法是将它放在某处并使用带有observable的共享服务,以允许所有感兴趣的组件发送消息。

另见https://angular.io/docs/ts/latest/cookbook/component-communication.html#!#bidirectional-service

答案 1 :(得分:1)

你不需要做任何这些。 只需创建一个登录组件,并在需要时重定向到它。 不要重复自己。 有一些方法可以验证用户的登录状态。然后,只要登录状态变为无效,只需使用适当的消息重定向到登录页面