Meteor - Mongo不会更新,对象在数组中

时间:2016-11-23 17:04:35

标签: javascript mongodb meteor

我在Meteor中遇到MongoDB的问题。基本上,我想更新嵌套在数组中的对象的属性。整个对象具有以下结构:

product {
 _id: 
 some other properties
 template: {
    some other properties
    additionalFields: [
      { _id: 
        content: **update this**
      }
    ]
 }
}

我写过以下Meteor方法:

 'products.update.field.content': function(product, field, update) {
    return Products.update(
        {_id: product._id, 'template.additionalFields._id': field._id},
        {$set: {'template.additionalFields.$.content': update }});
}

并调用我使用的方法

onInputChange(event) {
    const { product, field } = this.props;
    Meteor.call('products.update.field.content', product, field, event.target.value);
}

如果我在我的方法调用中放回一个回调(error, update) => console.log(error, update)(未定义,1)。然而,当我在console.log中时,产品对象内容没有改变。

有人可以帮忙吗? 感谢

1 个答案:

答案 0 :(得分:0)

你可以试试这个:



ButtonOne




或者您可以转到该链接了解更多详情 https://docs.mongodb.com/v3.2/reference/operator/query/elemMatch/