不变违规:必须在 组件中使用flatList时呈现文本字符串

问题描述 投票:0回答:2

我正在使用平面列表来显示来自未启动api的数据。但是在这里它一直抱怨说这句话>>

不变违反:文本字符串必须在组件内呈现

我什至没有使用任何文本组件。我不知道这里出了什么问题。

App.js

export default function App() {
  const [loading, setLoading] = useState(true);
  const [image, setImage] = useState([]);
  const {height, width} = Dimensions.get('window');


  const URL = `https://api.unsplash.com/photos/random?count=30&client_id=${ACCESS_KEY}`;
  useEffect(() => {
    loadWallpapers();
  }, [])


  const loadWallpapers =() =>  {
    axios.get(URL)
    .then((res) => {

      setImage(res.data);
      setLoading(false);
    }).catch((err) => {
      console.log(err)
    }).finally(() => {
      console.log('request completed')
    })
  } 
  const renderItem = (image) => {
    console.log('renderItem', image);
    return (
      <View style={{height, width}}>
        <Image 
        style={{flex: 1, height: null, width: null}} 
        source={{uri : image.urls.regular}}/>

      </View>
    )
  }
  return loading ? (
    <View style={{flex: 1, backgroundColor: 'black', justifyContent: 'center',alignItems: 'center'}}>
      <ActivityIndicator size={'large'} color="grey"/>
    </View>
  ): (
    <SafeAreaView style={{flex: 1, backgroundColor: 'black'}}>
      <FlatList
        horizontal
        pagingEnabled
        data={image}
        renderItem={({ item }) => renderItem(item)} />}
      />
    </SafeAreaView>
  )
}

我正在使用平面列表来显示来自未启动api的数据。但是在这里,它一直抱怨说这种不变的违规:文本字符串必须在我是的组件中呈现。

reactjs react-native react-native-android react-native-flatlist
2个回答
0
投票

0
投票
© www.soinside.com 2019 - 2024. All rights reserved.