如何确保在反应组件呈现之前加载所有redux状态?

时间:2018-04-08 07:00:30

标签: reactjs redux react-redux redux-thunk

我在用户登录时使用用户的fk_branch_id进入redux商店。

我正在使用react componentDidMount初始化jquery数据表。 在数据表初始化中,我发送带有ajax头文件的fk_branch_id

beforeSend: (request) => {
  let branchId = _.isEmpty(this.props.active_branch)?null:this.props.active_branch.branch_id;
  request.setRequestHeader("fk_branch_id", branchId);
},

但是当发送ajax时,fk_branch_id为null,因为还没有加载来自redux状态的fk_branch_id,所以有没有办法确保在调用componentDidMount之前状态是完全加载的

1 个答案:

答案 0 :(得分:0)

如果在安装后该值仍然不可用,则需要在componentWillReceiveProps或新getDerivedStateFromProps中执行此操作。检测到fk_branch_id刚从falsy变为truthy:

if (!this.props.fk_branch_id && nextProps.fk_branch_id) {
    // send request with nextProps.fk_branch_id
}