带中继框架的ArangoDB Foxx

带中继框架的ArangoDB Foxx,arangodb,graphql,relayjs,foxx,Arangodb,Graphql,Relayjs,Foxx,有人能告诉我或给我指一下如何使用ArangodbFoxx和中继框架的链接吗?我到处都找过了,没有运气 我有一个使用的中继项目,我想让它与ArangodbFoxx一起工作(目前我使用的是中继框架的模式)。据我所知,ArangoDB Foxx使用graphql sync而不是graphql。因此,它打破了中继完整堆栈的构建过程 任何帮助都将不胜感激。谢谢……) 我对relay fullstack了解不多,但如果您唯一的问题是生成教程中提供的模式文件,请检查它是如何生成的: 使用最新版本的graphq

有人能告诉我或给我指一下如何使用ArangodbFoxx和中继框架的链接吗?我到处都找过了,没有运气

我有一个使用的中继项目,我想让它与ArangodbFoxx一起工作(目前我使用的是中继框架的模式)。据我所知,ArangoDB Foxx使用
graphql sync
而不是
graphql
。因此,它打破了
中继完整堆栈的构建过程


任何帮助都将不胜感激。谢谢……)

我对relay fullstack了解不多,但如果您唯一的问题是生成教程中提供的模式文件,请检查它是如何生成的:

使用最新版本的graphql(或graphql sync),可以直接从包中导出
内省查询
打印模式
实用程序

通过创建名为
updateSchema
的新Foxx脚本,可以在Foxx中模拟
updateSchema
脚本:

首先将脚本添加到清单中:

"scripts": {
  "update-schema": "scripts/updateSchema.js"
}
然后将脚本本身实现为
scripts/updateSchema.js
,就像这样(假设您的GraphQL模式位于
data/schema.js
):


现在,您可以从web界面运行脚本,方法是进入服务的“设置”选项卡并从下拉列表中选择脚本(无需传递任何参数,只需按“确定”)。脚本应该为您的模式生成两个JSON和GraphQL文件,就像初学者工具包中的文件一样。

回答得很好。此外,为了将
schema.json
传递回中继应用程序,您需要在Foxx中提供一个api(GET)。在
服务器/utils/babelRelayPlugin.js
中,您需要发出GET请求,然后通过传递检索到的
schema.json
来设置
babel中继插件。
'use strict'
const fs = require('fs')
const path = require('path')
const Schema = require('../data/schema')
const gql = require('graphql')

const result = gql.graphql(Schema, gql.introspectionQuery)
if (result.errors) {
  console.error(
    'ERROR introspecting schema: ',
    JSON.stringify(result.errors.map((err) => gql.formatError(err)), null, 2)
  )
} else {
  fs.writeFileSync(
    path.join(__dirname, '../data/schema.json'),
    JSON.stringify(result, null, 2)
  )
}
fs.writeFileSync(
  path.join(__dirname, '../data/schema.graphql'),
  gql.printSchema(Schema)
)