Я новичок в JavaScript, и я пытаюсь получить свои первые бит CloudCode. Я создал вспомогательную функцию deleteFriendRequest
, поскольку я хочу, чтобы это использовалось другими функциями. То, что я написал, работает, но я получаю сообщение об ошибке.CloudCode обещает последовательно, вспомогательная функция дает ошибку «Объект не имеет метода» apply »
Моя вспомогательная функция:
function deleteFriendRequest(requestObjectId) {
// create query to find FriendRequest from its objectId
var requestQuery = new Parse.Query("FriendRequest");
requestQuery.equalTo("objectId", requestObjectId);
return requestQuery.first().then(function(friendRequestObj) {
return friendRequestObj.destroy();
});
}
функция, где она используется:
Parse.Cloud.define("createFriendship", function(request, response) {
Parse.Cloud.useMasterKey();
var currentUser = request.user;
var friendRequestId = request.params.friendRequestObjectId;
var fromUser;
var fromRelation;
var requestQuery = new Parse.Query("FriendRequest");
requestQuery.equalTo("objectId", friendRequestId);
requestQuery.include("fromUser");
requestQuery.first().then(function(friendRequestObj) {
fromUser = friendRequestObj.get("fromUser");
fromRelation = currentUser.relation("friendsRelation");
fromRelation.add(fromUser);
return currentUser.save();
}).then(function(friendRequestObj) {
var toRelation = fromUser.relation("friendsRelation");
toRelation.add(currentUser);
return fromUser.save();
}).then(deleteFriendRequest(friendRequestId))
.then(function(error) {
response.error(error);
});
});
Когда я бегу createFriendship
я получаю следующее сообщение об ошибке:
Input: {"friendRequestObjectId":"qVIa9zzPR0"}
Result: TypeError: Object [object Object] has no method 'apply'
at e (Parse.js:2:8941)
at Parse.js:2:8390
at Array.forEach (native)
at Object.x.each.x.forEach [as _arrayEach] (Parse.js:1:661)
at c.extend.resolve (Parse.js:2:8341)
at Parse.js:2:9020
at e (Parse.js:2:8941)
at Parse.js:2:8390
at Array.forEach (native)
at Object.x.each.x.forEach [as _arrayEach] (Parse.js:1:661)
Спасибо заранее за любая помощь, которую любой может предложить.
То, что вы указали, не поможет решить проблему, так как ошибка находится глубоко в источнике Parse.js. 'apply()' - это метод объекта Function. Вы можете передавать объект, где вы должны передавать функцию. – Blindman67