首页 > 解决方案 > 语法错误:无效或意外的令牌

问题描述

我正在尝试连接到 mongoose,但是当我需要顶部的 mongoose 包时,它会抛出一个错误“语法错误:无效或意外的令牌”。即使我评论了我的模型,它也不会改变。

应用程序.js

const express = require("express");
const bodyParser = require("body-parser");
const mongoose = require("mongoose");

const feedRoutes = require("./routes/feed");

const app = express();

app.use(bodyParser.json());

app.use(feedRoutes);

mongoose
.connect(
 "mongodb+srv://name:password@reactrest-dkohi.mongodb.net/barber",
 { useNewUrlParser: true, useUnifiedTopology: true }
)
.then(result => {
 app.listen(8080);
 console.log("connected");
})
.catch(err => console.log(err));

我的模型 post.js

const mongoose = require("mongoose");

const Schema = mongoose.Schema;

const postSchema = new Schema(
{
  name: {
    type: String,
    required: true
  },
  age: {
    type: Number,
    required: true
  },
  phone: {
    type: Number,
    required: true
  },
  email: {
    type: String,
    required: false
  }
},
{
  timestamps: true
}
);

module.exports = mongoose.model("Post", postSchema);

这就是错误

SyntaxError: Invalid or unexpected token
    at Module._compile (internal/modules/cjs/loader.js:749:23)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:816:10)
    at Module.load (internal/modules/cjs/loader.js:672:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:612:12)
    at Function.Module._load (internal/modules/cjs/loader.js:604:3)
    at Module.require (internal/modules/cjs/loader.js:711:19)
    at require (internal/modules/cjs/helpers.js:14:16)
    at Object.<anonymous> (D:\document-disk(d)\SIDEPROJECT\node_modules\mongodb\lib\core\index.js:3:12)
    at Module._compile (internal/modules/cjs/loader.js:805:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:816:10)
[nodemon] app crashed - waiting for file changes before starting...

谢谢你的帮助。

标签: node.jsmongodbmongoose

解决方案


似乎是 postSchema 中的一个错误的括号,位于电子邮件和时间戳之间。下面的片段有效吗?

const postSchema = new Schema(
{
  name: {
    type: String,
    required: true
  },
  age: {
    type: Number,
    required: true
  },
  phone: {
    type: Number,
    required: true
  },
  email: {
    type: String,
    required: false
  },
  {
  timestamps: true
  }
});

推荐阅读