Javascript 如何同时获得多个API?

Javascript 如何同时获得多个API?,javascript,reactjs,react-native,get,fetch,Javascript,Reactjs,React Native,Get,Fetch,对于我的项目,我必须在我的项目中获得几个API,这些API与其他API链接,即它们具有相同的数据 这是我的密码 导出默认类App扩展React.Component{ 建造师(道具){ 超级(道具); } componentDidMount(){ 我保证([ getData(), getData(“?第2页”), ]) .然后([dataSource1,dataSource2])=>{ 这是我的国家({ 孤岛加载:false, isLoading2:false, 数据源1, 数据源2, });

对于我的项目,我必须在我的项目中获得几个API,这些API与其他API链接,即它们具有相同的数据

这是我的密码


导出默认类App扩展React.Component{
建造师(道具){
超级(道具);
}
componentDidMount(){
我保证([
getData(),
getData(“?第2页”),
])
.然后([dataSource1,dataSource2])=>{
这是我的国家({
孤岛加载:false,
isLoading2:false,
数据源1,
数据源2,
});
})
.catch((错误)=>{
//处理错误
});
}
render(){
const getData=(子路径=“”)=>fetch(`https://api.rawg.io/api/games${subpath}`)
.then(res=>res.json())
。然后(result=>result.results);
console.log(getData)
}
我尝试使用axios,但没有成功


当我删除注释时,它只显示第二次fetch…

对于每个API,您需要两个单独的
fetch
调用。要等待两者都完成,请使用
Promise.all

const getData = (subpath = '') => fetch(`https://api.rawg.io/api/games${subpath}`)
    .then(res => res.json())
    .then(result => result.results);

你能详细解释一下你的意思吗,获得多个api?请提及api是如何相互链接的。提供的示例几乎无法解释任何事情。是url的延续,即2个api具有相同的json结构和相同的数据名。否则,api太大了。我在顶部编辑了我的代码,使用了你的code,它给了我一条错误消息,
getData未定义。
。此消息来自
承诺。所有
都位于`componentDidMount()`.对不起,如果这个问题有点傻,这是我第一次使用react native。听起来你忘了定义我在答案中的代码中定义的
getData
函数。你不必做
getData
函数-你可以写出单独的
fetch
调用-但那会很湿。最好是写cod如果可能的话。不,把它放在
承诺的某个地方。所有的
调用都可以看到它-在它的外部作用域中的某个地方,或者在
componentDidMount
中,或者在与类定义相同的级别上,或者在其他外部的某个地方!在我的呈现中,我在
控制台.log()
中调用getData。在内部,我有两个承诺:
[[PromiseState]]
[[PromiseSult]]
,我想访问
[[PromiseSult]]
来获取数组,但我无法…因为有两个数组?
componentDidMount() {
    Promise.all([
        getData(),
        getData('?page=2'),
    ])
        .then(([dataSource1, dataSource2]) => {
            this.setState({
                isLoading: false,
                isLoading2: false,
                dataSource1,
                dataSource2,
            });
        })
        .catch((error) => {
            // handle errors
        });
}