1 回答

TA贡献1826条经验 获得超6个赞
您的代码需要进行一些小的更新才能正常工作。
您需要在更新任何状态变量之前检查是否_isMounted是。true
您还需要设置_isMounted=falseincomponentWillUnmount()而不是_isMounted=true.
请参阅下面的更新代码:
export default class something extends React.Component {
_isMounted = false;
state = {
};
componentDidMount() {
this._isMounted = true;
firebase = new Fire((error, user) => {
if (error) {
return alert('something something something something');
}
firebase.getLists((lists) => {
if (this._isMounted){
this.setState({ lists, user }, () => {
this.setState({ loading: false });
});
}
});
if (this._isMounted){
this.setState({ user });
}
});
}
componentWillUnmount() {
this._isMounted = false;
firebase.detach();
}
添加回答
举报