我有以下组件:
<component value="3"></component>
组件代码是:
private _value:number;
get value(): number {
return this._value;
}
@Input()
set value(value: number) {
console.log(value);
console.log(typeof value);
this._value = value;
}
日志是:
3
string
但是,如果我绑定属性,如:
<component [value]="variable1"></component>
在这种情况下,如果variable1是类型编号,我会得到一个数字。
3
number
我知道打字稿没有魔力,但这是正确的行为吗? Angular Input装饰器应该进行转换吗?
我正在检查setter中的类型,但是在打字稿时我会遇到错误。
我不想在gettes和setter中使用任何类型。
任何优雅的解决方案?
答案 0 :(得分:5)