Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 正在终止react-native:Can';t执行反应状态更新_Reactjs_React Native - Fatal编程技术网

Reactjs 正在终止react-native:Can';t执行反应状态更新

Reactjs 正在终止react-native:Can';t执行反应状态更新,reactjs,react-native,Reactjs,React Native,所以我犯了一个著名的错误,无法执行react状态更新。我知道使用isMounted是反模式的,我正在努力避免这种情况 componentDidMount() { this.isMounted = false } componentWillUnmount() { this.isMounted = false } getWinner = async () => { //inside fetch if (this.isMounted) { th

所以我犯了一个著名的错误,无法执行react状态更新。我知道使用isMounted是反模式的,我正在努力避免这种情况

componentDidMount() {
    this.isMounted = false
}

componentWillUnmount() {
    this.isMounted = false
}

getWinner = async () => {
    //inside fetch
    if (this.isMounted) {
        this.setState({winner: responseJson})
    }
}
我的问题是,我是否使用fetchapi(对于react native)或axios来执行请求。我应该如何卸载,这样错误就不会发生

请注意,这是指react native的
获取API

async componentDidMount() {
    try {
      const result = await fetch(API);
      this.setState({
        hits: result.data.hits,
        isLoading: false
      });
    } catch (error) {
      this.setState({
        error,
        isLoading: false
      });
    }
  }