如何从解析查询返回对象
How to return an object from a Parse query?
这是我
的做法:
const Document = Parse.Object.extend('Document')
const query = new Parse.Query(Document)
let result = {}
query.get(id, {
success: function (object) {
result = object.toJSON()
console.log(result)
},
error: function (object, error) {
alert(`Error: ${error.code} ${error.message}`)
}
})
console.log(result)
return result
第一个console.log(result)
输出对象:
对象 {内容: "trstrtrts", 创建于: "2016-01-17T11:20:30.694Z", 标题:"文档 2",更新于:"2016-01-17T11:20:30.694Z",字数: "3000"...}
但是第二个什么也没返回。从 Parse 查询返回对象的正确方法是什么?
编辑:
根据匿名者的回答,我尝试了这个:
店铺.js:
store.first = (id) => {
var query = new Parse.Query(Document)
return query.get(id)
}
export default store
主.js:
store.first(to.params.id).then((document) => {
console.log(document.toJSON())
return document.toJSON()
})
但是我收到以下错误:
未捕获的类型错误:对象函数 ParsePromise() { _classCallCheck(这个,ParsePromise);this._resolved = 假;this._rejected = 假;this._resolvedCallbacks = []; this._rejectedCallbacks = [];} 没有方法 'all'
第二个
console.log(result)
在第一个之前发生。查询是一种异步操作。正确的方法是使用承诺。例如,你可以做
function foo(id){
var Document = Parse.Object.extend('Document');
var query = new Parse.Query(Document);
return query.get(id);
}
然后像这样使用函数 foo:
foo(objectID).then(function(object){
//do something with the object.
})
下面是一个在 js 中显示异步的示例。
console.log('a');
setTimeOut(function(){console.log('b')},0);
console.log('c');
打印顺序为 一个 c 乙
(我们有超时 0,但超时函数进入事件循环并在函数完成后发生)
有关更多信息,您可以阅读 https://developer.mozilla.org/he/docs/Web/JavaScript/EventLoop关于事件循环
相关文章:
- 使用DynamoDB查询返回
- Firebase:查询返回null
- sqlite查询返回错误-can'我不知道为什么
- 需要呈现MongoDB查询返回结果的特定索引/位置
- mongoose查询返回链接到用户的产品
- Node.js:从mongoose查询返回正确的JSON
- 当查询返回对象时,Express Mongo回调返回undefined
- 无法向 Mongoose 查询返回的对象添加新属性
- 将 mysql 查询返回的数据转换为 json(基于树)
- 获取所有表行并使用 CasperJS 中的 XPath 查询返回它们
- 在猫鼬查询返回集合之前,应用程序应该如何处理 http get 响应
- 如何根据查询返回选择 html 下拉列表
- j查询返回错误时间的日期格式
- 如何从解析查询返回对象
- 维基百科API没有为某些查询返回任何内容
- 有没有一种方法可以将每个文本区域自动调整为其大小's从数据库查询返回的数据
- 如何在 parse.com 中从查询返回值
- 你能制作Dojo'如果给定#id,则s查询返回单个节点
- 如何用javascript解析SQL查询返回
- 最大查询返回带有sequelise.js的null对象