我创建了一个带有复选框的Angular2组件,并从父级调用它:
// My model
export class Term {
id: number;
checkbox: boolean;
name: string;
...
}
export class TermComponent implements OnInit, ControlValueAccessor {
term: Term; // my model
ngOnInit(): void {
this.getTerm(); // a http call that fill the term variable
}
registerOnChange(fn: any): void {
this.onChange = fn;
}
registerOnTouched(fn: any): void {
this.onBlur = fn;
}
writeValue(obj: Term): void {
this.term = obj;
}
onChanged($event) {
this.term.checkbox= $event && $event.target && $event.target.checked;
this.onChange(this.term.checkbox);
}
}
...
在父级上。我正在像这样添加TermComponent:
<term
[(ngModel)]="term"
name="term">
</term>
但是在应用程序中,当我选中复选框时,我的父项返回true / false。我希望它返回完整的模型。我该怎么办?