我正在尝试观察已更改的数据,但它似乎并没有起作用。我正在做的是在调用此自定义元素的视图模型中通过redux更改状态对象。
import React from 'react';
import ReactDOM from 'react-dom';
import { customElement, inject, bindable, noView } from 'aurelia-framework';
import Groups from './groups-react/groups-container.jsx';
@noView()
@inject(Element)
@bindable('state')
@bindable('modalService')
@bindable('childViewState')
@customElement('groups-react-element')
export class GroupsReactElement {
reactComponent = {};
constructor(element) {
this.element = element;
}
render() {
this.reactComponent = ReactDOM.render(<Groups state={this.state} modalService={this.modalService} childViewState={this.childViewState}/>, this.element);
}
bind() {
this.render();
}
unbind() {
ReactDOM.unmountComponentAtNode(this.element);
}
dataChanged(newVal) {
this.bind();
}
}
当我在viewmodel中更改状态对象(完全替换它)时虽然dataChanged从未在此自定义元素中触发。
答案 0 :(得分:4)
此课程没有data
属性。如果您希望在state
属性发生更改时收到通知,则需要将函数命名为stateChanged
。