为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 React Native 中的 api 返回 JSON 中的随机数据

如何从 React Native 中的 api 返回 JSON 中的随机数据

白板的微信 2023-08-10 11:04:23
我有一个从 API 获取数据的函数。我想从数据中返回一个随机数据。我已经尽了一切努力,但似乎没有解决办法。下面是从 API 调用 JSON 数据的函数。const fetchLastestPost = async () => {        const response = await fetch(            `https://learnersnews.com/wp-json/wp/v2/case?per_page=10&page=${page}`,        );        const post = await response.json();        if (page == 1) {            setPosts(post);                 } else {            setPosts([...posts, ...post]);                   }        setIsFetching(false);        setIsLoading(false)    }展开片段下面是 Flatlist 组件 <FlatList                data={posts}                onRefresh={() => onRefresh()}                refreshing={isFetching}                onEndReached={() => handleLoadMore()}                onEndReachedThreshold={0.1}                showsVerticalScrollIndicator={false}                ListFooterComponent={() => renderFooter()}                renderItem={({ item }) => (                                   <TouchableOpacity activeOpacity={0.8} onPress={() =>            navigation.navigate('Singlecase', {                post_id: item.id,                name: item.title.rendered,            })        }>                 <View>                          <Card>            <CardItem header bordered style={{ paddingTop:8, paddingBottom: 8,}}>              <Text  numberOfLines={2}             ellipsizeMode='tail'  style={styles.titleText} >            {item.title.rendered}</Text>            </CardItem>                       <CardItem bordered style={{ paddingTop:1, paddingBottom:1 }}>            
查看完整描述

1 回答

?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

你尝试过javascript地板方法吗?我认为如果你给 ids 分配了一个数字,它会帮助你获得一个随机的 JSON。


你可以写:


const fetchLastestPost = async () => {

    let page = Math.floor(100)

    const response = await fetch(

        `https://learnersnews.com/wp-json/wp/v2/case?per_page=10&page=${page}`,

    );

    ...

}

或者,如果 ids 未排序,那么您可以尝试将 ids 放入数组中:


const fetchLastestPost = async () => {

        let value = Math.floor(4);

        let page = [1,3,4,7,10]

        const response = await fetch(

            `https://learnersnews.com/wp-json/wp/v2/case?per_page=10&page=${page[value]}`,

        );

        ...

    }

或者,如果您想在不知道 id 和序列的情况下获取数据,请尝试:


const fetchLastestPost = async () => {

let page = Math.floor(100) //add totalCount in number which you can get from server side.

    const response = await fetch(

        `https://learnersnews.com/wp-json/wp/v2/case?per_page=10&page=${page}`,

    );

    if(response == ""){

        fetchLastestPost();

    }

    ...

}


查看完整回答
反对 回复 2023-08-10
  • 1 回答
  • 0 关注
  • 109 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信