我能够从contenteditableModel指令发出一个事件但是我无法接收数据'@ Input('contenteditableModel')模型:any;'我一直未定义。
contenteditableModelChange工作正常,但不是contenteditableModel
我更新数据的方法是更新this.elementRef.nativeElement.textContent,因为我无法弄清楚如何使用[innerHTML]
该指令基于on this guy code: 但重建角度2.0。
let calcResults = [for year in 1..int CoffeMachine.Lifetime -> calculation year]
顺便说一句,如果有人建议使用textContent属性(而不是value)和输入事件来设置我自己的等效属性和事件数据绑定,我已经在这个plunker上尝试了它,并且在IE上存在游标问题, Firefox和Safari设置为0
答案 0 :(得分:2)
我将ngOnChanges
更改为:
ngOnChanges(changes) {
console.log('ContentEditableDirective.ngOnChanges');
console.log(changes);
//if (changes.model.isFirstChange())
this.refreshView();
}
工作正常。
Plnkr:https://plnkr.co/edit/VW4IJvcv1xjtBKTglWXT?p=preview
根据文档:isFirstChange()
告诉我们是否第一次分配值。根据您的代码,您只想在第一次更改时更新文本。哪个错了。我认为我们根本不需要担心它。