即使对于相同的组件,EventEmitter也不适用于Angular 2(Beta)

时间:2016-01-25 04:41:40

标签: events typescript angular

我正在使用此代码进行鼠标悬停,然后我想为同一个组件触发一个自定义事件(更不用说我需要(^mouseover)符号的冒泡事件了)

import {Component, Input, Output, EventEmitter} from 'angular2/core';
import {EntityModel} from "../../models/clauses/entity";

@Component({
    selector: 'suggestion-entry',
    events: ["selecto"],
    template:
    `<div (mouseover)="emitSuggestionClicked(entry)" (selecto)="selectWorked()">{{entry.text}}

     </div>
    `
})
export class SuggestionEntryComponent {
    @Input() entry: EntityModel;
    @Output() selecto: EventEmitter<any> = new EventEmitter();

    emitSuggestionClicked(clickedEntry:EntityModel): void {
        console.log(clickedEntry);
        this.selecto.emit(clickedEntry);
    }

    selectWorked() {
      alert("select worked");
    }
}

我真的无法发现什么是错的。我甚至试过this.selecto.next(clickedEntry);我会感激任何帮助!

谢谢, 迈克尔

1 个答案:

答案 0 :(得分:2)

据我所知,只有家长可以听取这个事件。 EventEmitter发出的事件不会冒泡。 (^event)已被删除。