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

Why there is a function named bind() in this aureliaJS-reactJS example?

为什么在这个AureliaJS-ReactJS example中有一个名为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 view life-cycle hook:

bind(bindingContext:any) - Invoked when the databinding engine binds the view. The binding context is the instance that the view is databound to.

在示例中,因为 Hello 扩展用 @noView() 修饰(因此 Aurelia 不会尝试为其查找模板),bind 钩子用于呈现将 React 组件绑定到 this.element.