Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 到路由器出口的角度发射_Angular - Fatal编程技术网

Angular 到路由器出口的角度发射

Angular 到路由器出口的角度发射,angular,Angular,我在父组件中有路由器出口,并希望从子组件发射,但从未触发父组件函数 子组件 @Output() setTitle: EventEmitter<string> = new EventEmitter<string>(); ngOnInit() { this.setTitle.emit('test'); } 即使是简单的div也不起作用 请提供帮助您不能使用路由器出口上的自定义事件指令。 路由器出口指令有两个事件。 激活-在路由器中加载组件时 停用-从路由器卸载组

我在父组件中有路由器出口,并希望从子组件发射,但从未触发父组件函数

子组件

@Output() setTitle: EventEmitter<string> = new EventEmitter<string>();

ngOnInit() {
    this.setTitle.emit('test'); 
}
即使是简单的div也不起作用
请提供帮助

您不能使用路由器出口上的自定义事件指令。
路由器出口指令有两个事件。
激活
-在路由器中加载组件时
停用
-从路由器卸载组件时

对于您的场景,您可以在加载子组件时使用
activate
事件,onActivate将被触发,您将获得组件参考

<div class="panel-body">
    <div (setTitle)='setTitle($event)'></div>
    <router-outlet (activate)='onActivate($event)'></router-outlet>
</div>

您不能使用路由器出口上的自定义事件指令。
路由器出口指令有两个事件。
激活
-在路由器中加载组件时
停用
-从路由器卸载组件时

对于您的场景,您可以在加载子组件时使用
activate
事件,onActivate将被触发,您将获得组件参考

<div class="panel-body">
    <div (setTitle)='setTitle($event)'></div>
    <router-outlet (activate)='onActivate($event)'></router-outlet>
</div>

是否要在onClick函数中发出路由器出口?我在父级中有路由器出口。数据并非来自child@user2837961我的解决方案对你有用吗?@Vikas是的。我不能感谢你欢迎你,伙计:)很乐意帮忙你想在onClick函数中发出路由器出口吗?我在父节点中有路由器出口。数据并非来自child@user2837961我的解决方案对你有用吗?@Vikas是的。我无法感谢你欢迎你,伙计:)很乐意帮忙
<div class="panel-body">
    <div (setTitle)='setTitle($event)'></div>
    <router-outlet (activate)='onActivate($event)'></router-outlet>
</div>
onActivate(componentReference) {
   //Below will subscribe to the searchItem emitter
   componentReference.setTitle.subscribe((data) => {
      this.setTitle(data);
   })
}