【发布时间】:2017-11-11 03:37:54
【问题描述】:
我正在使用 React with Meteor,我的数据来自 createContainer
export default createContainer((props) => {
const { search } = props.dataTables.favorites;
let data = [];
data = Meteor.user().favorites;
return { data };
}, StarredListView);
现在我想对状态初始化后的数据做一些处理
constructor(props) {
super(props);
this.state = {
data: props.data
};
this.resetOldData = this.resetOldData.bind(this);
}
现在我如何确保在渲染数据之前我的resetOldData 调用并重置状态。我在哪里可以调用这个函数来重置我的状态。
resetOldData() {
Meteor.call('reset.old.favorite.data', (err, res) => {
if (err) { this.props.renderAlert(err.reason, null, true); }
if (res) {
this.props.renderAlert(res.message);
this.setState({ data: res });
}
});
}
【问题讨论】:
-
那么...问题是什么?
-
如何确保在渲染数据之前我的 resetOldData 调用并重置状态。我在哪里可以调用这个函数来重置我的状态。
-
@ZaidIqbal 你可以从反应生命周期钩子调用--
componentWillMount() -
@Ricky 我尝试了 componentWillMount() 函数但它不起作用我的状态保持不变
标签: reactjs meteor react-native