情況一:
控件的屬性 與 ts 文件裏面定義的變量重名了
比如 @Input() key: string;
<div-model key="abc"></div-model>
情況二:
這個問題是應爲HTML文件中ngModel綁定了一個變量,卻沒有給變量賦值導致的。
<input #assembleInquestion id="assembleInputquestion" (click)="question(assembleInquestion,assembleQuestion)"
name="comb_question" class="wangEditor-container" [(ngModel)]="assembleQuestionName">
錯誤
assembleQuestionName: string; // 聲明瞭變量,沒有賦值
正確
assembleQuestionName = ''; // 改爲這種聲明方式
情況三:
當我想循環一個數組,並把數組的每個元素放到子組件的 [(ngModel)] 中時,出現了這個錯誤
<app-item *ngFor = "let item of data" [(ngModel)] = "item"></app-item>
問題原因是,ngModel 會去查找 ts文件中的 this.item ,然而我們並沒有在ts文件中定義 item。
換句話說,ngModel中傳入的值必須是文件的本地的變量,臨時的item不會被接受。
最後解決辦法是
<app-item *ngFor = "let item of data; let i=index" [(ngModel)] = "data[i]"></app-item>
通過indexOf獲取這個item在數組中的 index,然後 直接通過data[index]來傳入到ngModel中