我希望将EventEmitter输入到一组类
export const EVENT_ACTIONS = {
OPEN_EVENT: "OPEN_EVENT",
OPEN_REGISTRATION: "OPEN_REGISTRATION"
}
export class OpenEventAction { type = EVENT_ACTIONS.OPEN_EVENT; constructor(public payload: SbEvent) { } }
export class OpenRegistrationAction { type = EVENT_ACTIONS.OPEN_REGISTRATION; constructor(public payload: SbEvent) { } }
export type EventActions
= OpenEventAction
| OpenRegistrationAction
在组件
中@Output() eventOutput:EventEmitter<EventActions> = new EventEmitter();
我得到一个装饰器在这里无效的错误 我的IDE说类型EventEmitter不是通用的。
我真的不明白这个错误。请帮忙!
干杯
答案 0 :(得分:0)
我的问题是@JB Nizet 在评论中提到的不正确的导入。我正在从 EventEmitter
导入 events
。相反,导入需要是 import { EventEmitter } from '@angular/core'
。
然后我就可以像这样指定一个类型:
@Output('search-term') searchTerm: EventEmitter<string> = new EventEmitter();