为什么在这个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
。