2

私は今これらのコードを持っています:

OneCollection.find({}, {fields: {'oneFiled.child1': 1}});
OneCollection.find({}, {fields: {'oneFiled.child2': 1}});

しかし、動的に子フィールド名を付けたいと思います。

let childfield = "child1";
OneCollection.find({}, {fields: {'oneFiled.childfield': 1}});  // How to write this one?

ファイル名を動的に指定するにはどうすればよいですか? ありがとう

4

2 に答える 2

3

ブラケット表記を使用して、次のようにフィールド オブジェクトを作成します。

var childfield = "child1",
    options = { fields: {} };

options["field"]["oneField."+childfield] = 1;
OneCollection.find({}, options); 
于 2016-02-24T17:11:26.497 に答える
2

このような ?

let childField = 'child1';
let listFields = {};
listFields['oneField.'+childField]=1;
OneCollection.find({}, {fields: listFields });
于 2016-02-24T17:16:18.677 に答える