Nodejs require不起作用



为什么以下代码不起作用

const {express} = require('express');
const router = express.Router();

未解决的功能或方法路由器

但是这项工作

const express = require('express');

,如果我想这样做,我该怎么办。.两种方法需要

const {validationResult, check} = require('express-validator/check');

节点-v//v8.3.0

我正在尝试使用此事.. https://github.com/ctavan/ctavan/express-validator#usage

为什么以下代码不起作用

const {express} = require('express');

const router = express.router();

您正在使用破坏来提取不存在的属性。您的代码实际上是这样做的:

const temp = require('express');
const express = temp.express;

require('express')返回的对象具有多个属性,但是.express不是其中之一,因此您最终将Express Express设置为未定义。然后,当您致电express.router()时,您会收到错误。

工作的代码只是保存整个对象,然后使用正确的属性名称访问它。您可以保留该代码,或者如果您知道自己只对路由器感兴趣,则可以执行:

const {Router} = require('express');
const router = Router();

与:

几乎相同
const express = require('express');
const Router = express.Router;
const router = Router();

,如果我想这样做,我该怎么办。.两种方法需要

const {validationResult,check} = require('express-validator/check');

我不熟悉该图书馆的出口。如果您知道该对象同时具有validationResultcheck,并且这些是您唯一关心的内容,那么您的代码看起来不错。

最新更新