我的问题是关于SyntaxError,我在安装最新版本的mongoose-validator后得到了。 我刚刚为简单的MEAN堆栈应用程序安装了mongoose-validator(1.3或1.3.2)的最新版本。每当我启动节点服务器时,出现错误,控制台在“mongoose-validator.js”文件中看到3个函数,每个函数都有一个以3个点开始的参数('... param1' ),它说这是意想不到的。删除点带来了一些其他的错误。另外,我认为在节点模块中进行任何更改都不合适。启动节点服务器会出现以下SyntaxError错误。最新版本的mongoose-validator(1.3或1.3.2)给出了一个SyntaxError
C:\mean_stack_app\node_modules\mongoose-validator\lib\mongoose-validator.js:14
const omit = function omit(obj, ...keys) {
^^^
SyntaxError: Unexpected token ...
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:374:25)
at Object.Module._extensions..js (module.js:405:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (C:\mean_stack_app\app\models\user.js:5:16)
at Module._compile (module.js:398:26)
at Object.Module._extensions..js (module.js:405:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (C:\mean_stack_app\app\routes\api.js:1:74)
at Module._compile (module.js:398:26)
user.js的:5:16
var mongoose = require('mongoose'); //import mongoose
var Schema = mongoose.Schema; //to use mongoose method Schema and store it in var Schema
var bcrypt = require('bcrypt-nodejs');
var titlize = require('mongoose-title-case');
var validate = require('mongoose-validator');
var nameValidator = [
validate({
validator: 'matches',
arguments: /^[a-zA-Z]+$/i
})
];
api.js:1:74
var User = require('../models/user');
var jwt = require('jsonwebtoken');
我已经安装在的package.json文件中的下列相关性与mongoose-沿验证者:
"dependencies": {
"bcrypt-nodejs": "0.0.3",
"body-parser": "^1.17.2",
"express": "^4.15.3",
"express-session": "^1.15.5",
"jsonwebtoken": "^7.4.2",
"mongoose": "^4.11.4",
"mongoose-title-case": "0.0.4",
"mongoose-validator": "^1.3.2",
"morgan": "^1.8.2",
"passport": "^0.3.2",
"passport-facebook": "^2.1.1",
"passport-google-oauth": "^1.0.0",
"passport-twitter": "^1.0.4"
我应该怎么做fi x这个问题?有人可以帮帮我吗?
您使用的是什么版本的节点?该库正在使用其余参数语法,并且它似乎不受Node版本的支持。您需要使用版本6.4或更高版本。您可以通过在命令行中运行'node -v'来检查。 –
好的。我正在使用v5.3.0如何在windows的命令提示符下使用npm安装节点的新版本? – Anjy
如果我的答案解决了您的问题,请将其标记为如此。谢谢。 –