如何从其他组件监听事件?

时间:2019-08-19 15:30:20

标签: angular

我尝试将数据从一个组件传递到另一个组件,但是我真的不知道该怎么做

(我想将数据从sidenav传递到路由Component)。我已经使用@input开始了,但是我的组件不是父级。我有一个布局组件,其中包括导航头,侧面导航和路由内容。我也尝试过localStorage,但是传递给contentComponent的数据不是很好。我单击sidenav中的一个项目,并将此数据传递到routingComponent,以根据此数据请求API。当我单击该项目时,我将其他项目加载到侧边栏,而我想传递的是抛出新的项目列表(即在加载contentComponent时加载的项目)。我不知道如何将新物品传递到那里。

 onClick(m) {
        console.log('test'+m);
        this.menus = [];
        this.plateformeSelectionnee = m;
        localStorage.setItem('pl', this.plateformeSelectionnee);
        this.plateformeService.getAll().subscribe(menus => {
                this.menus = menus;


        });

  }

我要传递的是函数(订阅)末尾的加载。但是我不知道<如何处理。我刚刚将选择的旧值传递给了本地存储。 我不知道我是否明确。如果您感到困惑,我可以尝试更好地解释。感谢您的帮助


编辑:他们已经是很多有关此问题的话题。 他们中的大多数人都很老,我发现一个很好的tuto可以通过Angular 8上的共享服务来做到这一点 来自:https://jasonwatmore.com/post/2019/06/21/angular-8-communicating-between-components-with-observable-subject

希望会有所帮助

0 个答案:

没有答案