我必须将一个布尔值传递给父组件,但这样做时我收到一个错误,指出“类型‘false’不可分配给类型‘EventEmitter’。”
这是它的代码,
@Output() isTimeBoundAccessEnabled = new EventEmitter();
这是我在某个条件失败时将布尔值分配为 FALSE 的方式
this.isTimeBoundAccessEnabled = false ;
我的代码到底有什么错误?
答案 0 :(得分:2)
正确的做法是:
@Output() isTimeBoundAccessEnabled = new EventEmitter<boolean>();
this.isTimeBoundAccessEnabled.emit(false);
答案 1 :(得分:2)
要将 false
传递给父组件(从子组件),您应该 emit
值如:
// in child component
this.someEventEmitter.emit(false);
然后父级有一个类似的事件处理程序
<MyChild (customEvent)="handleEvent($event)"> ...
在父类中,我们有 handleEvent
handleEvent($event){
console.log($event); // should be `false` if child executed the above code
}
答案 2 :(得分:0)
看起来您没有发出值并分配它。确保在使用发射器时发射值。在您的情况下,您可以使用上述答案中提到的其他内容。还要确保使用正确类型的 EventEmitter。
this.isTimeBoundAccessEnabled.emit(false);