如何以角度创建和触发自定义事件

新手上路,请多包涵

我是 Angular 的新手,我已经阅读了有关事件绑定的内容,所以我可以这样做:

 <button (click)="doSomething()"></button>

我想知道是否可以创建一个自定义事件并做同样的事情。假设我想要一个自定义事件,例如: deleteItem ,是否可以这样做?如何?

 <my-component (deleteItem)="doSomething()"></my-component>

原文由 GJCode 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 241
2 个回答

当然,你可以使用 eventEmitter 在我的组件 ts 文件中添加这个

 @Output() deleteItem= new EventEmitter();

当你想发起活动时,请执行此操作

  this.deleteItem.emit();

你也可以像这样传递数据

  this.countUpdate.emit({value: some data });

然后像这样在父组件中捕获它

<my-component (deleteItem)="doSomething($event)"></my-component>

并在父 ts 文件中

    doSomething(event)
    {
       console.log(event);
    }

原文由 Ehsan Kiani 发布,翻译遵循 CC BY-SA 4.0 许可协议

EventEmitter 可用于创建您自己的自定义事件,eventemitter 是 Angular 框架中的对象。

@Output() deleteItem= new EventEmitter<{itemName:string}>(); ItemName=''; this.deleteItem.emit({ItemName=this.itemName});

原文由 Teja 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题