首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >普里斯玛。Javascript to Typescript

普里斯玛。Javascript to Typescript
EN

Stack Overflow用户
提问于 2020-04-12 04:17:24
回答 1查看 377关注 0票数 0

我正在使用Prisma和Javascript。它工作得很好。升级到typescript后,出现以下错误:GraphQLError: Syntax Error: Cannot parse the unexpected character ".".

代码语言:javascript
复制
// index.ts

const path = require('path')
const express = require('express')
const { importSchema } = require('graphql-import')
const { ApolloServer } = require('apollo-server-express')
const { Prisma } = require('prisma-binding')
const { makeExecutableSchema } = require('graphql-tools')
import resolvers from './resolvers'


const { directiveResolvers } = require('./directives')



const schema = makeExecutableSchema({
  typeDefs: './schema.graphql',
  resolvers,
  directiveResolvers
})

const server = new ApolloServer({
  debug: true,
  schema,
  formatError: error => error,

  context: req => ({
    ...req,
    db: new Prisma({
      typeDefs: path.join(__dirname, './generated-schema.graphql'),
      endpoint: 'http://localhost:4466/nacho/prod'
    })
  })
})

const app = express()

const port = 9000
app.listen({ port }, () => console.log(`? Server ready at http://localhost:4000${server.graphqlPath}`))
代码语言:javascript
复制
// tsconfig.json
{
  "compilerOptions": {
    "target": "es5",
    "moduleResolution": "node",
    "module": "commonjs",
    "sourceMap": true,
    "allowJs": true,
    "rootDir": "src",
    "outDir": "dist",
    "lib": ["es2016", "esnext.asynciterable"]
  },
  "exclude": ["test", "dist"],
  "include": ["src/**/*"]
}

然后我运行tsc,它工作了,然后是node dist/index_server.js,我有这个错误:

代码语言:javascript
复制
/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/lexer.js:270
  throw (0, _syntaxError.syntaxError)(source, pos, unexpectedCharacterMessage(code));
  ^
GraphQLError: Syntax Error: Cannot parse the unexpected character ".".
    at syntaxError (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/error/syntaxError.js:15:10)
    at readToken (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/lexer.js:270:38)
    at Object.lookahead (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/lexer.js:54:43)
    at Object.advanceLexer [as advance] (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/lexer.js:44:33)
    at Parser.expectToken (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/parser.js:1399:19)
    at Parser.many (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/parser.js:1514:10)
    at Parser.parseDocument (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/parser.js:111:25)
    at Object.parse (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql/language/parser.js:36:17)
    at Object.buildSchemaFromTypeDefinitions (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql-tools/dist/generate/buildSchemaFromTypeDefinitions.js:19:33)
    at makeExecutableSchema (/Users/alan/Documents/app/nacho/prismaTs/node_modules/graphql-tools/dist/makeExecutableSchema.js:26:29)
    at Object.<anonymous> (/Users/alan/Documents/app/nacho/prismaTs/dist/index_server.js:29:14)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
EN

回答 1

Stack Overflow用户

发布于 2020-04-12 04:42:40

检查'./schema.graphql'是否存在语法错误?

无论您使用的是什么IDE,都应该有一个用于读取graphql模式的插件,并且应该突出显示语法错误。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61163163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档