使用lowdb映射多个键

时间:2016-08-07 21:43:30

标签: javascript node.js lodash

在Node {j}的lowdb中,如果我有一个类似

的DB JSON
[
    {
        "foo": "bar1",
        "tar": "ball1",
        "data": [
            {
                "a": 1
            },
            {
                "b": 2
            }
        ]
    },
    {
        "foo": "bar2",
        "tar": "ball2",
        "data": [
            {
                "a": 1
            },
            {
                "b": 2
            }
        ]
    }
]

我可以通过查询[bar1, bar2]

获得所有foo:db.get('test').map('foo').value();

然而我需要获得几个键,就像我可以执行db.get('test').map(['foo', 'data.a']).value();之类的操作一样:

[
    {
        "foo": "bar1",
        "data": [
            {
                "a": 1
            }
        ]
    },
    {
        "foo": "bar2",
        "data": [
            {
                "a": 1
            }
        ]
    }
]

我该怎么做?

1 个答案:

答案 0 :(得分:1)

如果data是JSON,为什么不使用array.map()?就这样:

var data = db.get('test');

var dataSelection = data.map(e => {
  return { foo: e.foo, a: data[0].a };
});