我有一个使用指令的组件y:
<div makeDroppable (dropped)="getDroppedList($event)">
<ul>
<li *ngFor="let task of toAddList" >{{task.id}}</li>
</ul>
</div>
在指令MakeDroppable的末尾,一个事件是发射
let data = JSON.parse(ev.dataTransfer.getData('text'));
this.dropped.emit(data);
此事件由(dropped)=“getDroppedList($ event)”(在div中)处理,因此调用我的组件的getDroppedList。 在这个getDroppedListméthod中,另一个事件是emit
this.toAddList = <Array<Task>>event;
console.log('emity event');
this.toto.emit(this.toAddList);
这个新事件toto用于另一个组件x,其中html是
<tr *ngFor="let task of tasks" (toto)="removeDroppedList($event)">
removeDroppedList是x
中定义的方法 removeDroppedList(event){
console.log('this second event')
当我执行代码时,似乎没有处理第二个事件,因为“第二个事件”从未在控制台中显示。 我在console.log('这第二个事件')上放了一个断点,但是 它永远不会停止
答案 0 :(得分:0)
失踪&#34;在模板中tasks
之后。
答案 1 :(得分:0)
假设失踪&#34;不相关,是否与todo事件有脱节?我的意思是,是否有多个todo对象被创建?组件Y如何引用组件X的todo事件?
似乎你需要一个服务,所以两个组件都引用了相同的事件对象,因为组件X需要将它作为输出,组件Y将从服务中获取它的引用,因此它可以发出一个值