Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js ';获取对象';GraphQL架构定义中的异常_Node.js_Graphql_Apollo Server - Fatal编程技术网

Node.js ';获取对象';GraphQL架构定义中的异常

Node.js ';获取对象';GraphQL架构定义中的异常,node.js,graphql,apollo-server,Node.js,Graphql,Apollo Server,我定义的模式如下所示: import { gql } from 'apollo-server'; export default gql` type ProjectEntry { ID: Int! Name: String } # The schema allows the following Queries: type Query { project(id: Int!): ProjectEntry

我定义的模式如下所示:

import { gql } from 'apollo-server';

export default gql`
    type ProjectEntry {
        ID: Int!
        Name: String
    }

    # The schema allows the following Queries:
    type Query {
        project(id: Int!): ProjectEntry
        projects: [ProjectEntry]
    }
`;
最后,我将其与以下内容结合起来:

const typeDefs = require('./data/typedefs');
const resolvers = require('./data/resolvers ');

const server = new ApolloServer({ typeDefs, resolvers });
但是当我尝试运行应用程序时,我得到了以下错误:
error:typeDef数组必须只包含字符串和函数,got object


此错误来自何处?

如果在引擎盖下使用
导出默认“someString”
,则导出的
值的结果值最终为
{default:'someString'}
。这就是允许您同时声明默认导出和命名导出的原因。导入您的模块

// like this
const typeDefs = require('./data/typedefs').default

// or like this
import typedefs from './data/typedefs'

如果使用
export default'someString'
,则在引擎盖下,
exports
值的结果值最终为
{default:'someString'}
。这就是允许您同时声明默认导出和命名导出的原因。导入您的模块

// like this
const typeDefs = require('./data/typedefs').default

// or like this
import typedefs from './data/typedefs'

我也犯了同样的错误。 解决方案:

const { typeDefs } = require('./data/typedefs');
const { resolvers } = require('./data/resolvers ');
需要括号,因为我们不导出默认值。 与前端一样:

export default Component -> import Component from "..."
export const Component -> import { Component } from "..."

我也犯了同样的错误。 解决方案:

const { typeDefs } = require('./data/typedefs');
const { resolvers } = require('./data/resolvers ');
需要括号,因为我们不导出默认值。 与前端一样:

export default Component -> import Component from "..."
export const Component -> import { Component } from "..."

你是如何导入typeDefs的?@DanielRearden,我已经用你要求的信息更新了帖子。你是如何导入typeDefs的?@DanielRearden,我已经用你要求的信息更新了帖子。