Adr*_*ris 7 typescript angular
这个问题使我发疯...
我有这个代码:
if (control.value==null||control.value == "" || control.value == " " || control.value.length != 5) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
我的问题:control.value.length
总是返回“未定义”。
我尝试使用像这样的字符串变量,但结果是相同的。
var curVal: string = control.value;
if (curVal==null||curVal== "" || curVal == " " || curVal != 5) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
我哪里错了?
编辑:精度:我的control.value不为null或为空,我测试值为59000
此代码:
console.log(control.value + ' - ' + control.value.length);
Run Code Online (Sandbox Code Playgroud)
记录此:59000-未定义
编辑2:谢谢你,解决了。问题是我的control.value是数字而不是字符串。
我认为您输入的类型不是字符串而是数字。
@Component({
selector: 'my-app',
template: `
<div>
<input type="number" [ngFormControl]="ctrl">
</div>
`
})
export class AppComponent {
constructor() {
this.ctrl = new Control();
this.ctrl.valueChanges.subscribe((val) => {
console.log(val.length);
});
}
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,由于数字没有属性,因此val.length
返回。undefined
length
有关更多详细信息,请参见此plunkr:https ://plnkr.co/edit/5yp5ms9XY5Z3TEE2qYIh?p = preview 。
归档时间: |
|
查看次数: |
28821 次 |
最近记录: |