访问模板中的新属性

时间:2018-11-18 17:54:06

标签: angular angular-directive

我想从指令中访问宿主元素自定义属性集。

我的指令中包含以下代码:

@Directive({  selector: '[myDirective]'})
export class MyDirective {
...
  @HostListener('input')
  onInput() {
    this.elementRef.nativeElement.myProp = true;
  }
}

这是我模板中的

<input MyDirective #myInput="ngModel" />
<p #myP>{{myInput.myProp}}</p>
<button [disabled]=myInput.myProp>Click</button>

我可以看到该属性是在打字稿代码中设置的(在调试器中和/或通过日志记录),但是它似乎并不影响结果代码(myP为空,并且从未禁用该按钮)。是不可能还是我做错了方向?

如果以上操作不可能,是否还有其他方法可以通过模板中的host元素访问我的指令的宿主元素自定义属性/属性,或者(甚至更好)我的指令实例本身?像[disabled]=myInput.myDirective.myProp之类的东西。

0 个答案:

没有答案