以角度方式将点击功能从一个组件传递到另一个组件

问题描述 投票:0回答:1

我有一个父组件。让我们说; 组件1。在其 html 中我添加了以下代码。

<div>
   <router-outlet></router-outlet>
</div>

<div>
<button>Banner</button>
</div>

我想将“横幅”按钮单击功能传递到另一个组件中,该组件将通过路由器出口呈现。获取按钮单击功能后,我想在该组件内打开一个弹出窗口。在路由模块中,我添加了如下路径:

  {
    path: "parent",
    component: Component1,
    },
    children: [
      {
        path: 'child',
        loadChildren:
        () => import('path').then(m => m.Module2)
    }]

在这个 Module2 中,我有另一个根组件 Component2。在其 html 中,我添加了监听组件选择器。

组件2 html:

<app-component3></app-component3>

仅在 Component3 ts 文件中我想获得横幅点击功能。在听的时候我想打开弹出窗口。如果有人可以提供帮助,那将会很有帮助。

angular components
1个回答
0
投票

我的理解是,你想要在通过路由分隔的两个组件之间进行通信,解决方案是使用事件总线,我们使用组件a中的主题发出事件,然后在组件c中接收事件。

Stackblitz 演示

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.