在parse.com上,我试图保存一个包含以下内容的对象:
和收件人姓名
到一个名为" Messages。"该对象正在被正确保存,但是,当我尝试使用for循环以便保存3个不同的副本,每个副本具有不同的随机收件人时,只保存第一个对象。
randUsers是一个包含三个随机用户的数组。
我该如何解决这个问题?
function sendLean(leanBody, leanSenderName, leanSenderId, randUsers){
var Messages = Parse.Object.extend("Messages");
var messages = new Messages();
for(var i = 0; i < 3; ++i){
messages.set("messageBody", leanBody);
messages.set("recipientId", randUsers[i]);
messages.set("senderName", leanSenderName);
messages.set("senderId", leanSenderId);
messages.save(null, {
success: function(messages) {
// Execute any logic that should take place after the object is saved.
alert('New object created with objectId: ' + messages.id);
},
error: function(messages, error) {
// Execute any logic that should take place if the save fails.
// error is a Parse.Error with an error code and message.
alert('Failed to create new object, with error code: ' + error.message);
}
});
}
答案 0 :(得分:2)
您需要Messages
对象的每个新实例都在for循环中。变化
var messages = new Messages();
for(var i = 0; i < 3; ++i){
到
for(var i=0,l=randUsers.length; i<l; i++){
var messages = new Messages;
如果randUsers
是数组,或
for(var i in randUsers){
var messages = new Messages;
如果randUsers
是对象。