Dojo2如何强制dojo 2小部件重新渲染?

时间:2018-04-19 07:51:07

标签: typescript dojo2

我正在使用dojo2小部件。我想在表单提交上呈现小部件(VDOM)。

public submitFrom(input: any): void {
    console.log("want to re-render widget after this.");
}

在submitFrom中,我想重新渲染我的dom。

1 个答案:

答案 0 :(得分:0)

我得到了解决方案。

Dojo 2 widgetbase具有invalidate方法,该方法强制窗口小部件重新呈现。 Dojo 2 Widgets可以直接调用invalidate(),但是非widget只能发出一个事件:this.emit({type:'invalidate'})

public submitFrom(input: any): void {
  console.log("want to re-render widget after this.");
  // force the widget to re-render
  this.invalidate();
}

对于非小部件,需要执行以下操作: -

public submitForm(): void {
    this.emit({ type: 'invalidate' });
}