Javascript jsdom.env不是使用node.js的HerokApp中的函数

Javascript jsdom.env不是使用node.js的HerokApp中的函数,javascript,node.js,express,heroku,Javascript,Node.js,Express,Heroku,我有一个应用程序在Heroku中运行,使用node.js。直到不久前,它还在工作(像往常一样)。我再也没有收到通知了。我没有更改服务器端和客户端的任何代码。我在Heroku中收到以下错误 Heroku中的错误日志 2017-07-18T04:16:42.967561+00:00 app[web.1]: TypeError: jsdom.env is not a function 2017-07-18T04:16:42.967563+00:00 app[web.1]: at /app/se

我有一个应用程序在Heroku中运行,使用node.js。直到不久前,它还在工作(像往常一样)。我再也没有收到通知了。我没有更改服务器端和客户端的任何代码。我在Heroku中收到以下错误

Heroku中的错误日志

2017-07-18T04:16:42.967561+00:00 app[web.1]: TypeError: jsdom.env is not a function
2017-07-18T04:16:42.967563+00:00 app[web.1]:     at /app/server.js:77:11
2017-07-18T04:16:42.967564+00:00 app[web.1]:     at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
2017-07-18T04:16:42.967565+00:00 app[web.1]:     at next (/app/node_modules/express/lib/router/route.js:137:13)
2017-07-18T04:16:42.967566+00:00 app[web.1]:     at Route.dispatch (/app/node_modules/express/lib/router/route.js:112:3)
2017-07-18T04:16:42.967566+00:00 app[web.1]:     at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
2017-07-18T04:16:42.967567+00:00 app[web.1]:     at /app/node_modules/express/lib/router/index.js:281:22
2017-07-18T04:16:42.967568+00:00 app[web.1]:     at Function.process_params (/app/node_modules/express/lib/router/index.js:335:12)
2017-07-18T04:16:42.967568+00:00 app[web.1]:     at next (/app/node_modules/express/lib/router/index.js:275:10)
2017-07-18T04:16:42.967569+00:00 app[web.1]:     at /app/server.js:27:5
2017-07-18T04:16:42.967569+00:00 app[web.1]:     at Layer.handle [as handle_request] (/app/node_modules/express/lib/router/layer.js:95:5)
package.json

{
  "name": "project-name",
  "description": "",
  "version": "0.0.0",
  "private": true,
  "dependencies": {
    "body-parser": "*",
    "express": "*",
    "jquery": "*",
    "jsdom": "*",
    "web-push": "*"
  }
}
我的javascript文件的顶部也有以下内容

var $ = require('jquery'),
    jsdom = require("jsdom"),
    express = require('express'),
    app = express(),
    webPush = require('web-push'),
    bodyParser = require('body-parser');

所以我不知道为什么我会收到这个错误

您可能不应该使用
*
来指定依赖项版本。锁定到特定版本,以确保相同的代码在远程和本地运行。还要确保使用
npm
node
版本在
package.json
中指定名称空间。仍然存在
jsdom.env
错误。在当地,它工作得很好{“name”:“project name”、“description”:“version”:“1.0.0”、“private”:true,“dependencies”:{“body parser”:“^1.17.2”、“express”:“^4.15.3”、“jquery”:“~2.2.0”、“jsdom”:“^11.1.0”、“web push”:“^3.2.2”),“引擎”:{“node”:“6.11.1”}@PatrickRoberts,它与“*”的使用相连接。服务器正在获取插件的最新版本,我不知道API已经更新。现在一切都好了。