TypeError:require(…).jsdom不是一个函数

我已经使用visual studio 2015进行nodejs web开发。
我有像nodejs下面的包。

  • 身体分析器1.18.1
  • expression4.15.4
  • jquery 1.7.4
  • html 1.0.0
  • jsdom 11.2.0

和我的server.js是

var http = require('http'); var express = require('express'); var bodyParser = require('body-parser'); var jsdom = require('jsdom'); var path = require('path'); var port = process.env.port || 1337; var app = express(); app.use(bodyParser()); app.use('/bootstrap', express.static(__dirname + '/public/bootstrap')); app.use('/css', express.static(__dirname + '/public/css')); app.use('/jquery', express.static(__dirname + '/public/jquery')); app.use('/pages', express.static(__dirname + '/public/pages')); app.use('/popper', express.static(__dirname + '/public/popper')); app.use('/scripts', express.static(__dirname + '/public/scripts')); app.get('/', function (request, response) { var $ = require('jquery'); var title = $(html).find('title').text(); console.log(title); response.send("Hello node"); }); app.listen(port); 

无法使用jquery获取错误。 “ TypeError:require(…)。jsdom不是函数

 TypeError: require(...).jsdom is not a function at create (c:\users\XYZ12\documents\visual studio 2015\Projects\NodeMovieList\NodeMovieList\node_modules\jquery\lib\node-jquery.js:5:31) at c:\users\XYZ12\documents\visual studio 2015\Projects\NodeMovieList\NodeMovieList\node_modules\jquery\lib\node-jquery.js:9435:18 at Object.<anonymous> (c:\users\XYZ12\documents\visual studio 2015\Projects\NodeMovieList\NodeMovieList\node_modules\jquery\lib\node-jquery.js:9437:2) at Module._compile (module.js:570:32) at Object.Module._extensions..js (module.js:579:10) at Module.load (module.js:487:32) at tryModuleLoad (module.js:446:12) at Function.Module._load (module.js:438:3) at Module.require (module.js:497:17) at require (internal/module.js:20:19) 

尝试使用以下内容,

 var jsdom = require('jsdom'); const { JSDOM } = jsdom; const { document } = (new JSDOM('')).window; global.document = document; 

参考: https : //github.com/airbnb/enzyme/issues/942#issuecomment-314715229

这个问题是因为你正在使用的旧版本的jQuery,移动到3.2.1的较新版本。

我也面临着同样的错误,转向新版本解决了这个问题。 您可以检查此答案以获取更多信息: https : //stackoverflow.com/a/47215319/5892553