有没有办法为获取的项目赋予初始值而不是null?

时间:2018-09-13 21:23:46

标签: reactjs react-native fetch typeerror

当我上传图像时,由于item.id最初为空,TypeError: null is not an object(evaluating this.state.queryid.includes)会引发此错误。

当我在includes参数中设置一个数字,例如this.state.queryid.includes(0)时,此错误消失了。

我试图在后端执行的操作是在{插入0而不是null,以便在提取时将其理解为0。这不适用于本机反应。

我只需要说If the item.id is null then set it as 0之类的帮助即可。我也正在使用访存API和Flatlist:

    fetch(`https://www.example.com/React/user.php` , {
    method: 'POST',
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json',
    }

   })
     .then((response) => response.json())
     .then((responseJson) => {
       this.setState({
         isLoading: false,
         dataSource: responseJson,
         user_image:  responseJson[0].user_images,
         },function() {


         });
     })
     .catch((error) => {
       //console.error(error);
     });



<FlatList

       data={ this.state.user_image}




       renderItem={({item}) => <View>
       {this.state.queryid.includes(item.id)  ?
              <TouchableOpacity
               style={{alignSelf:'center', }}>
               <Animation
               progress={item.unprogress}
               source={require('../Animations/favourite_app_icon.json')}

               />
               </TouchableOpacity>
             :
             <TouchableOpacity
              style={{alignSelf:'center'}}>
              <Animation
              progress={item.progress}
              source={require('../Animations/favourite_app_icon.json')}


              />
              </TouchableOpacity>
            }
       </View>
      />

0 个答案:

没有答案