我在运行时创建了一个div,它的onclick
绑定到组件的一个函数。
let div = document.createElement("div");
div.onclick = this.divClick;
document.getElementById("container").appendChild(div);
点击功能应该像这样更新模型:
divClick(event) {
this.divContent = event.target.innerHTML;
}
但视图未随divContent
更改而更新。
(当将值记录到控制台时,它似乎已更新)
使用角度(click)
时,它按预期工作。
<div (click)=divClick($event)>click me</div>
我认为问题与使用常规onclick
事件有关,但我不知道如何解决这个问题。
答案 0 :(得分:1)
在调用this
时,divClick
指向的地方需要注意:
使用以下其中一项:
div.onclick = (e) => this.divClick(e);
或
div.onclick = this.divClick.bind(this);
答案 1 :(得分:0)
如果要动态创建div,则应该动态地将事件绑定到该div。 This回答可能对您有帮助。