首页 > 解决方案 > Parse 获取没有任何实际数据的对象

问题描述

我的 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 无法访问此列表...它只是将其缩减...为什么?

标签: javascriptparse-serverparse-javascript-sdk

解决方案


要访问 a 的属性,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'))
});

这应该记录所有地名


推荐阅读