每次使用第一个“导入”时,当我试图运行neo4j graphql应用程序时,我都会得到下面的错误。
PS C:\Users\grand-stack-starter-master\api> nodemon index.js
[nodemon] 1.19.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node index.js src/index.js`
C:\Users\grand-stack-starter-master\api\src\index.js:1
import { typeDefs } from "./graphql-schema";
^
SyntaxError: Unexpected token {
at Module._compile (internal/modules/cjs/loader.js:723:23)
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)
[nodemon] app crashed - waiting for file changes before starting... 下面是我的大堆node.js代码
import { typeDefs } from "./graphql-schema";
import { ApolloServer } from "apollo-server";
import { v1 as neo4j } from "neo4j-driver";
import { makeAugmentedSchema } from "neo4j-graphql-js";
import dotenv from "dotenv";
// set environment variables from ../.env
dotenv.config();
const schema = makeAugmentedSchema({
typeDefs
});
const driver = neo4j.driver(
process.env.NEO4J_URI || "bolt://localhost:7687",
neo4j.auth.basic(
process.env.NEO4J_USER || "neo4j",
process.env.NEO4J_PASSWORD || "xxxx"
)
);
const server = new ApolloServer({
context: { driver },
schema: schema
});
server.listen(process.env.GRAPHQL_LISTEN_PORT, "0.0.0.0").then(({ url }) => {
console.log(`GraphQL API ready at ${url}`);
});对于每个import语句,我都会得到这个错误。如果我从代码(ex: import { typeDefs } from“./graphql”)中删除有问题的导入,则在下一个导入时得到相同的错误,如下所示
import { ApolloServer } from "apollo-server";
^
SyntaxError: Unexpected token {
at Module._compile (internal/modules/cjs/loader.js:723:23)
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)
[nodemon] app crashed - waiting for file changes before starting...有人能帮我找出哪里出了问题吗
发布于 2019-10-14 10:28:09
看起来你的package.json有什么问题。
当您启动api时,我会看到以下命令:
[nodemon] starting `node index.js src/index.js`因此,您没有使用babel来传输代码,这可能就是您的导入无法工作的原因。您应该在大堆栈启动程序(从网站下载)中使用package.json,它调用正确的命令来启动api服务器,并提供babel支持。
"start": "./node_modules/.bin/nodemon --exec babel-node src/index.js"正如您可以看到的那样,这个命令使用babel节点来传输您的代码,这增加了对导入的支持,这些导入现在应该能够正常工作,并且您可以只使用npm运行api。如果您使用github存储库中的包,代码就没有什么不同,您应该使用npm命令:
npm start-dev发布于 2020-07-27 13:31:48
在我的例子中,当使用命令时,我在错误的文件夹中,对于其他有同样问题的人来说,这也可能是原因,所以请确保您在服务器文件夹中。我的案子是Express.js的。
编码愉快!
发布于 2022-01-24 09:49:40
当我使用可选链接访问嵌套对象时,我得到了同样的错误,一旦我删除了它,我的错误就解决了。
https://stackoverflow.com/questions/58374279
复制相似问题