我的Parse SDK似乎在做奇怪的事情,请查看以下内容:
await Parse.User.logIn("testuser", "123asd");
this.initMap().then( correct => this.correctInit = correct);
const places = await PlaceDAO.getAllForPosition(this.coords);
this.placesList = places;
console.log(this.placesList)
我登录,然后从此DAO方法获取所有位置:
export class PlaceDAO {
static async getAllForPosition(geopoint) {
try {
let query = new Parse.Query("Place");
query.withinKilometers("location", {latitude: geopoint.lat, longitude: geopoint.lng}, 20);
return await query.find();
} catch (err) {
console.log("DAO ERROR: ", err)
}
}
}
当我在query.find()之后或在控制器中读取收到的内容时,看到的是这两个对象;它们具有正确的ID,但是在Parse类中没有定义任何属性。此类中的所有公共读写都配置了ACL ...请查看:
奇怪的是,如果我选中“网络” ...:
是的,看来我的应用实际上收到了整个对象!尽管无法从Parse SDK访问此列表,但是只是将其缩减了...为什么?
答案 0 :(得分:1)
要访问Parse.Object
的属性,您需要使用.get(key)
方法。 (请参阅:https://docs.parseplatform.org/js/guide/#objects)
例如:
const places = await ParseDAO.getAllForPosition(position)
places.forEach((place) => {
console.log(place.get('placeName'))
});
这应该记录所有地名