所以我试图在我的 Meteor 应用程序中调用圣经经文 API。我用 name="display"
制作了一个模板,模板中有一个简单的 {{checkitout}}
。
然后对于模板,我尝试在其相应的帮助器中进行调用。它看起来像这样(在coffeescript中,但Javascript读者也应该理解):
@Template.display.helpers
checkitout:->
result = Meteor.http.call("GET","http://labs.bible.org/api/passage=john%203:2&type=json")
console.log(result)
URL 是圣经经文的 JSON,但问题是,Meteor.http.call
需要第三个参数,即“回调”(因为它位于客户端文件夹中)。我读了一些文档+示例,但不知道这意味着什么。
此外,如果我这样调用它,结果是否正是 JSON 文件,或者我是否需要将其放入新的哈希中?回调是什么意思?有人能给我举个例子吗?
最佳答案
由于助手是同步的,而 API 调用不是同步的,因此您需要将调用结果存储在 react 变量中并从助手返回:
verse = "Loading..."
verseLoaded = false
verseDep = new Deps.Dependency()
Template.Display.checkItOut = ->
verseDep.depend()
unless verseLoaded
verseLoaded = true
Meteor.http.get "...", (error, result) ->
verse = "..."
verseDep.changed()
verse
关于json - Meteor.http.call(调用URL API),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23721840/