我有一个像这样的简单角度代码:
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
template: `
<input type="number" #mytext (keyup)="onclickfunc(mytext.value)">
<button [disabled]="myVar==0" > Test </button>`,
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'app';
myVar=0;
onclickfunc(mytext){
this.myVar=mytext;
}
}
正如您所看到的,当myVar
为0时,该按钮应该被禁用。代码工作正常。但是,如果我将[disabled]="myVar==0"
更改为[disabled]="myVar===0"
,则会出现奇怪的行为。我的意思是,即使我在输入框中输入0,该按钮也不会被禁用。
你能解释一下原因吗?
答案 0 :(得分:1)
===
运算符检查值和类型,而==
运算符仅检查值。
例如:
1 == "1" -> true
1 === "1" -> false (because types are not equal)