typescript 无法创建边

bjg7j2ky  于 2023-01-31  发布在  TypeScript
关注(0)|答案(1)|浏览(97)

我创建了AWS AppSync graphql API,调用该API时将运行AWS Lambda函数,该函数将使用查询语言Gremlin创建顶点和边,但成功创建顶点后我无法创建边,AWS AppSync向我显示此错误**“消息”:“例如,addE(...).from不是函数”**
这是我的lambda函数代码,请检查一下我的代码是否有问题?告诉我我的错误在哪里?

import { process as gprocess } from 'gremlin';
import Post from './Post'
const gremlin = require('gremlin')
const DriverRemoteConnection = gremlin.driver.DriverRemoteConnection
const Graph = gremlin.structure.Graph
const uri = process.env.WRITER
const { t, P, } = gprocess;
const __ = gprocess.statics;

async function createPost(post: Post) {

    let dc = new DriverRemoteConnection(`wss://${uri}/gremlin`, {})

    const graph = new Graph()
    const g = graph.traversal().withRemote(dc)  

    let vertex = await g.addV('posts').property('title',post.title).property('content', post.content).property('id', post.id).next()

    let edge = await g.addE('post_to_post').from(g.V().hasLabel('posts').next()).to(g.V().hasLabel('posts').next()).next()

    dc.close()

    return post;
}

export default createPost
khbbv19g

khbbv19g1#

在Javascript中,from是一个保留字。当Gremlin有这样的冲突时,Javascript中步骤命名的约定是在步骤的后缀后附加下划线。因此,您可以将其称为from_()。您可以在此处的from()文档中查看该内容,并注意到在Javascript中,此处表示的其他步骤也存在其他类似的差异。

相关问题