Parse promise chain 주위에 머리가 있다고 생각하지만, 내가 이해할 수없는 것은 함수에서 데이터를 반환하는 방법입니다 (i) 약속 체인을 백업하고 (ii) 뒤로 내 원래 JS 코드의 호출 메소드.Parse promise chain에서 데이터 리턴하기
아래 코드를 사용하면 첫 번째 Parse 쿼리가 호출 된 다음 a() 및 b()가 모두 정상적으로 호출됩니다. 각 단계의 console.log는 테스트 용이며 체인이 순서대로 실행되었음을 보여줍니다.()하는 방법은()와 기능 B (다시 함수의 데이터를받을 수 있나요
) 그래서 주요 기능 getUserCompetitionTokens에 액세스 할 수 있습니다
지금은 3 개 질문이?
getUserCompetitionTokens()에서이 파싱 코드를 호출 한 주 프로그램으로 데이터를 반환하려면 어떻게해야합니까?
데이터를 함수 a()와 함수 b()에서 모두 주 프로그램으로 반환하려면 어떻게해야합니까?
function getUserCompetitionTokens(comp_id) {
Parse.initialize("****","****");
currentUser = Parse.User.current();
user_competition = Parse.Object.extend("UserCompetition");
var user_comp_query = new Parse.Query(user_competition);
user_comp_query.equalTo("UserParent", currentUser);
user_comp_query.find().then(a).then(b);
function a(user_comp_results) {
var no_results = user_comp_results.length;
var id = user_comp_results[0].id;
console.log("User Competition Output: " + no_results + " results found, first item id: " + id);
var Competition = Parse.Object.extend("Competition");
var query = new Parse.Query(Competition);
return query.get(comp_id, {
success: function(competition) {
console.log("COMP - " + competition.id);
},
error: function(competition, error) {
console.log(error);
}
});
}
function b(competition) {
var Competition = Parse.Object.extend("Competition");
var query = new Parse.Query(Competition);
query.get(comp_id, {
success: function(competition) {
console.log("COMP 2 - " + competition.id);
},
error: function(competition, error) {console.log(error);}
});
}
}
'query.get()'은 다소 매끄러운 방법입니다. 대신에'query.find()'를 사용할 수 있습니까? –