【发布时间】:2017-02-20 11:32:55
【问题描述】:
我有这个指令,它根据文本区域的内容设置流体高度:
@Directive({
selector: '[fluidHeight]',
host: {
'(ngModelChange)': 'setHeight()'
}
})
export class FluidHeightDirective implements AfterViewInit {
constructor(private elementRef: ElementRef) {}
ngAfterViewInit() {
this.setHeight();
}
@HostBinding('style.height.px')
height: number;
setHeight() {
console.log(true)
this.height = this.elementRef.nativeElement.scrollHeight;
}
}
但是,当我使用 [ngModel] 和 readonly 时,我无法让它工作:
<textarea [ngModel]="foo" fluidHeight readonly></textarea>
还有一个文本区域可以改变readonly 输入的内容。
我尝试过使用ngModelChange、change 和input,但它们似乎都不起作用。
有人知道怎么做吗?
【问题讨论】:
-
是
foo你的内容吗? -
@Dinistro 是的。
标签: angular typescript angular2-directives