J'utilise le serveur d'analyse pour vivre une requête contenant une classe contenant des pointeurs. Lorsque j'utilise include()
dans la requête normale, il obtenir toutes les données du pointeur, mais dans la requête en direct je reçois seulement le objectId
serveur d'analyse: inclure pointeur dans une requête en direct dans javascript sdk
code:
var currentUser = Parse.User.current();
const Conversation = Parse.Object.extend("conversations");
var fromQuery = new Parse.Query(Conversation);
fromQuery.equalTo("from", currentUser);
var toQuery = new Parse.Query(Conversation);
toQuery.equalTo("to", currentUser);
var mainQuery = Parse.Query.or(fromQuery, toQuery);
mainQuery.include("to")
mainQuery.include("from")
mainQuery.include("lastMessage")
// FIXME: DEBUG:
this.convsubscription = mainQuery.subscribe();
mainQuery.find().then((conversations) => {
for (var i = 0; i < conversations.length; i++){
var object = conversations[i]
this.conversations.unshift(object);
}
})
this.convsubscription.on('update', (object) => {
// we will get the index of updated object
var index = this.conversations.findIndex(x => x.id == object.id);
console.log(index);
// then we will remove the old object and insert the updated one
this.conversations.splice(index, 1 ,object)
console.log(JSON.stringify(this.conversations[index].get('lastMessage')))
})
Quand je fais JSON.stringify(this.conversations[index].get('lastMessage'))
donne seulement le objectId
. Je besoin d'un moyen d'accéder au contenu du pointeur lastMessage
Cordialement
est donc il y a une méthode que je peux utiliser pour obtenir les mêmes résultats? –
Oui, vous devez aller chercher les données avant d'y accéder. – nathan