React Native setState只能更新已安装或安装的组件

时间:2016-10-18 13:49:58

标签: javascript react-native

我有标签视图。每个选项卡都呈现自己的视图。在这些视图中,我在setState中设置了componentDidMount。当我频繁地切换我的标签时,它会发出警告。在阅读了一些帖子后,我理解的是,当我在componentWillUnmount中离开视图时,我已经中止了请求。但我不知道如何才能完成它。

async componentDidMount() {
    let res = await this.props.dispatch(getUserList());
    if(res.userList != undefined ){
      // to find unique roles...
      let data, unique = [];
      data =[...res.userList.data];
      unique = [...new Set(data.map(item => item.attributes.role))];
      await this.props.dispatch(uniqueData(unique, data));

      let groupList, listType, contactList;
      let ds = new ListView.DataSource({ rowHasChanged: (r1, r2) => r1 !== r2 });
      userList = [...this.props.directory.userList];
      this.setState({
        groupListData: ds.cloneWithRows(userList || []),
        selectedRole: 'All Contacts',
        isReady: true
      });
    }
    else{
      this.setState({ isReady: true });
    }

  }

0 个答案:

没有答案