Gremlin, javascript: откуда импортируется функция "valueMap ()"? - PullRequest
0 голосов
/ 12 октября 2018

Я использую es6 для nodejs и пытаюсь выполнить шаг project () в запросе gremlin.

В рамках проекции я хочу извлечь свойства.

Используя консоль gremlin, я бы использовал valueMap () для получения свойств.

Однако, когда я пытаюсь сделать это из javascript, я получаю ожидаемую ошибку «valueMap не является функцией».

Вопрос 1: откуда я импортирую эту функцию?

Вопрос 2: где я могу прочитать обо всех различных объектах gremlin, доступных для импорта в javascript?

===========================

Я использую Gremlin 3.3 для подключения к экземпляру AWS Neptune.

Вот мой гремлин-код:

g.V('test-id')  
    .bothE()  
    .limit(10)  
    .project('id', 'properties', 'out', 'in')  
    .by(id)  
    .by(valueMap())  
    .by(outV().id())  
    .by(inV().id())  

1 Ответ

0 голосов
/ 12 октября 2018

valueMap(), outV() и аналогичные обходы создаются анонимно из класса двойного подчеркивания - __ - поэтому ваш код можно переписать как:

const gremlin = require('gremlin');
const __ = gremlin.process.statics;

g.V('test-id')  
    .bothE()  
    .limit(10)  
    .project('id', 'properties', 'out', 'in')  
    .by(id)  
    .by(__.valueMap())  
    .by(__.outV().id())  
    .by(__.inV().id()) 
...