为什么在这个aureliaJS-reactJS示例中有一个名为bind()的函数?



为什么在这个AureliaJS-ReactJS示例中有一个名为bind()的函数?这是一个在应用程序生命周期中调用的Aurelia或React的回调方法吗?

@noView()
@inject(Element)
export class Hello {
  @bindable foo = "!";
  constructor(element) {
    this.element = element;
  }
  render() {
    ReactDom.render(<HelloTest foo={this.foo} />, this.element);
  }
  bind() {
    this.render();
  }
  fooChanged() {
    this.render();
  }
}

bind是Aurelia视图生命周期钩子:

bind(bindingContext:any) -当数据绑定引擎绑定视图时调用。绑定上下文是视图绑定到的实例。

在这个例子中,因为Hello扩展是用@noView()装饰的(所以Aurelia没有尝试查找它的模板),bind钩被用来渲染React组件绑定this.element

最新更新