Angular 2应用中动态内容侧组件的组织

Angular 2应用中动态内容侧组件的组织,angular,single-page-application,Angular,Single Page Application,我对水疗很陌生,我有一个关于组织跨区域侧菜单的问题,每个区域有不同的内容。所以我希望每次用户进入新区域时,菜单的内容都会动态变化 我不能通过@Input()将任何数据传递给菜单的组件,因为组件只创建一次,并且不可能在需要时每次都将实际数据传递给组件 我不想为任何应用程序区域创建唯一的侧菜单,因为菜单具有所有区域的任何公共元素 所以我的问题是如何根据当前使用的组件更新公共组件的数据。为了说明我的问题: 根分量 template: ` <div> <side

我对水疗很陌生,我有一个关于组织跨区域侧菜单的问题,每个区域有不同的内容。所以我希望每次用户进入新区域时,菜单的内容都会动态变化

我不能通过
@Input()
将任何数据传递给菜单的组件,因为组件只创建一次,并且不可能在需要时每次都将实际数据传递给组件

我不想为任何应用程序区域创建唯一的侧菜单,因为菜单具有所有区域的任何公共元素

所以我的问题是如何根据当前使用的组件更新公共组件的数据。为了说明我的问题:

根分量

template: `
    <div>
        <side-menu></side-menu>
        <div>
            <router-outlet></router-outlet>
        </div>
    </div>
`
在侧菜单组件中,我只需要渲染需要的元素,这取决于应用程序的实际状态。也许为每个区域创建几个相同的菜单是更可取的方式


我想这是SPA的常见问题,而不仅仅是Angular 2,所以也许您可以为我的问题提供概念性的解决方案。

使用共享服务。有很多类似的问题和例子。我有一个类似的问题,关于做一个通用的对话。解决方案类似于具有不同状态的菜单:
app
|--components
|   |--folder1
|   |--folder2
|   |--shared
|       |--side-menu.component.ts
|
|--services
|   |--folder1
|   |--folder2
..............