Angular 2 @Input数量问题

前端之家收集整理的这篇文章主要介绍了Angular 2 @Input数量问题前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下组件:

<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中的类型,但是当typescript正在编译时我会遇到错误.

我不想在gettes和setter中使用type any.

任何优雅的解决方

解决方法

使用方括号[]绑定时,该值直接绑定在对象上.

使用属性绑定,引号之间的值将作为字符串处理.

Maybe have a look at the docs.

working 07001 for example usage

猜你在找的Angularjs相关文章