【发布时间】:2015-06-06 00:31:01
【问题描述】:
我一直在努力制作一个小应用程序来从http://pokeapi.co/ 的 pokemon api 获取图像和信息,我正在使用 Promise 来学习课程,但是我可以得到一个组(例如:水类型),它给了我 78 个对象,每个都有一个resource_uri,它是给我每个口袋妖怪信息的数据。 到现在为止,我已经做了这个,我可以得到所有的对象,但是,现在我怎样才能让每个对象推送到 console.log(或稍后使用它们)所有 78 个口袋妖怪以及每个对象的数据。 到目前为止我的代码是这样的>
var $ = window.jQuery
var base = 'http://pokeapi.co/api/v1/egg/'
Promise.resolve($.get(base + '2'))
.then((results) =>
.then((results) => {
var pokechara = results.pokemon
var basechara = 'http://pokeapi.co'
var promises = []
for (let chara of pokechara){
var pokech = pokechara[i]
'${something}'
var pokechurl = basechara + pokechara[0].resource_uri
promises.push(Promise.resolve($.get(pokechurl)))
}
debugger
return Promise.all(promises)
})
.then((poke) => {
console.log(poke)
})
.catch((err) => {
debugger
})
我真的很想用 yugioh.wikia 的 api 做点什么,但我不知道如何才能工作,因为交叉服务器或标头的问题。要查看我正在做的事情的预览,您可以在http://www.kengreg.com/yugiohapp/
提前致谢
【问题讨论】:
-
能否请您提供更好的示例代码?这是无效的 javascript,除了抛出错误不会做任何事情。
-
嗨对不起,我正在研究它,但这是工作代码,只需要 jquery: var $ = window.jQuery var base = 'pokeapi.co/api/v1/egg' Promise.resolve($ .get(base + '2')) .then((results) => { var pokechara = results.pokemon var basechara = 'pokeapi.co' var promises = [] for (var i in pokechara){ var pokech = pokechara [i] var pokechurl = basechara + pokechara[0].resource_uri promises.push(Promise.resolve($.get(pokechurl))) } 调试器返回 Promise.all(promises) }) .then((poke) => { console.log(poke) }) .catch((err) => { debugger })
标签: javascript arrays json api