我想写一个方法来更新文档。调用Method的客户端可能不希望通过其参数更新Method公开的所有字段。在Meteor中实现这个的正确方法是什么?
答案 0 :(得分:1)
您可以为javascript方法添加一些可选参数:
function updateDocument(requiredArg, optionalArg){
// optionally set the contents of your optional argument to a default
optionalArg = (typeof optionalArg === 'undefined') ? 'default' : optionalArg;
//update your document
}
传递(多个)参数的另一种方法是将它们放在一个对象中:
var myDocument = Documents.find({foo: 'bar'})
var myUpdatedFields = {
field1: 'test',
field5: 'option',
field6: 'etc. etc.'
}
updateDocument(myDocument._id, myUpdatedFields);
这将使用必需参数(文档ID)和一组需要更新的字段调用updateDocument方法。