我在this article的帮助下使用angular元素创建了一个小型Web组件,其中包括@Input@Output

我能够将数据传递给@Input属性,但是听@Output事件使我发疯,因为我无法弄清楚如何从回调事件参数中读取数据。

//Emitting the boolean data
likeEvent() {
    this.likeNotify.emit(true);
}

在纯JavaScript中,我正在听likeNotify事件,如下所示:
const el = document.querySelector('facebook-card');
      el.addEventListener('likeNotify', e => {
        console.log(e.currentTarget.data); // Not working
      });

那么,如何从发射器传递的e对象中检索真/假值?

最佳答案

可以从 event.detail 属性读取通过Web组件中的Output传输的数据:

const el = document.querySelector('facebook-card');

el.addEventListener('likeNotify', (event) => console.log(event.detail));

有关更多详细信息,您可以阅读here

09-05 18:41