我有以下电话:
Meteor.call('updateDoc', id, obj);
将updateDoc定义为:
Meteor.methods({
updateDoc(id, doc) {
MyCollection.update(id, {$set: doc});
}
});
使用obj
调用它{
param1: undefined,
param2: 'defined!'
}
收到doc作为
的结果{
param2: 'defined!'
}
意味着在调用和方法触发器之间的某处,Meteor“清理”了未定义的属性。
我怀疑他们一直在使用JSON.stringify,这就是删除undefined的原因。
除了使用null而不是undefined(有效)之外,有没有办法强制meteor传递未定义?
作为旁注,在客户端更新集合也会“丢失”未定义的属性,即在客户端进行此更新实际上只会更新param2,并忽略param1,以便如果param1具有以前的值将保持完整(而不是像Mongo 2.4一样未被设置)
答案 0 :(得分:0)
尝试更改for (i=1; i<n; i++)
{
SDL_RenderDrawLine(ren, x[i-1], y[i-1], x[i], y[i]);
这样的
MyCollection.update(id, {$set: doc});