我试图在客户端方法中触发更新(考虑稍后进入服务器),如下所示:
Meteor.methods({
// Calling this and passing in a currentSelected value = "avatar" on click
'updateSelectedDocument' : function(currentSelected) {
var current = LayoutVariations.findOne({elementID: currentSelected});
var index = current.currentIndex;
myCollection.update({_id :current._id}, {currentIndex: 2});
}
});
.update应该找到该文档并更新该文档的currentIndex属性,它是一个整数。
我通过传入_id(例如" GRvujvgBEmem3Dp3d")在控制台中运行myCollection.update({_id :current._id}, {currentIndex: 2});
并且它有效。当我在一个方法中调用它并且它没有抛出任何错误时,它只是没有更新。
想知道可能是什么问题。
答案 0 :(得分:0)
使用更新中的$set
运算符将字段currentIndex
的值替换为指定的值:
Meteor.methods({
// Calling this and passing in a currentSelected value = "avatar" on click
'updateSelectedDocument' : function(currentSelected) {
var current = LayoutVariations.findOne({elementID: currentSelected});
var index = current.currentIndex;
myCollection.update({_id :current._id}, {$set: { currentIndex: 2 } }, function(error, affectedDocs) {
if (error) {
throw new Meteor.Error(500, error.message);
} else {
return "Update Successful";
}
});
}
});