如何在Angular2

时间:2017-04-06 15:06:41

标签: angular ngrx ngrx-effects

我正在使用@ngrx和@ngrx / router-store的Angular2应用程序进行路由操作。

我正在尝试重新构建应用程序,以尝试遵循指南中描述的模块路由指南:https://angular.io/docs/ts/latest/guide/router.html#!#crisis-child-routes

我正在构建的应用程序允许用户登录特定“位置”的帐户。用户登录后,该网址会将当前位置作为开头,类似于登录Gmail时显示的用户/帐户:https://mail.google.com/mail/u/0/

以下是路线的概要:

/login
/location/:id                 <-- LocationModule/LocationRoutingModule
/location/:id/home            <-- HomeModule/HomeRoutingModule
/location/:id/calendars       <-- CalendarModule/CalendarRoutingModule
/location/:id/calendars/:cid
/location/:id/clients         <-- ClientModule/ClientRoutingModule
/location/:id/clients/:cid
/location/:id/clients/:cid/...

现在,我希望个别功能模块(家庭,日历,客户端)不必知道路线中的“他们居住的地方”(即他们不知道他们是否存在于'/ '或'/ location /:id'。

只要功能之间没有路由,这样就可以了。但是,有些情况下需要在功能区/模块之间导航(我试图最小化这些)。例如,“home”组件上有一个应该路由到日历的链接。

我唯一的想法是(我都不喜欢):

  • 子模块用于路由的LocationModule级别提供的服务:
  • 在行动“SELECT_CALENDAR”触发的HomeModule之外的@ngrx效果,并且知道用于路由到日历功能区域的正确“基本”路线

有没有其他干净的方法来实现这个?不同的模块结构/层次结构?

如果没有,支持或反对我的两个潜在实施的任何论据?关于如何最好地实施的建议?

由于

0 个答案:

没有答案