米琪卡哇伊
2022-05-26 14:49:22
<a #globalVar><input [(ngModel)] = "newTitle" #newBlogTitle_l = "ngModel" ><div *ngIf = 'newBlogTitle_l.value === "" ' > globalVar.value = false</div><button (click) = "onSave()" [disabled] = "globalVar" > Save </button>如果輸入框中沒有任何內容,我希望該按鈕保持啟用狀態。實現這一目標的方法是什么?(這只是為了學習目的。)
2 回答

jeck貓
TA貢獻1909條經驗 獲得超7個贊
修改模板中的變量值不是一個好主意。從長遠來看,它很難維護。變量修改幾乎總是在控制器中完成。
此外,當有一個變量綁定到 時[(ngModel)],您可以直接使用它來設置其他元素的狀態。嘗試以下
控制器
export class AppComponent {
newTitle: string;
}
模板
<input [(ngModel)]="newTitle">
<button [disabled]="newTitle">Click me</button>

繁花如伊
TA貢獻2012條經驗 獲得超12個贊
我認為您將采用 Angular JS 方法,我們可以在 HTML 中定義全局變量并設置值。為什么不直接在 disabled 屬性上寫條件,如下所示
<input [(ngModel)] = "newTitle"
#newBlogTitle_l = "ngModel" />
<div *ngIf = "newBlogTitle_l.value" >
test
</div>
<button (click) = "onSave()" [disabled] = "newBlogTitle_l.value" > Save </button>
https://stackblitz.com/edit/angular-vgxn4t?file=src/app/app.component.html
添加回答
舉報
0/150
提交
取消