electron “ Helm 不是一个功能”,当尝试使用Express时

mccptt67  于 2023-09-28  发布在  Electron
关注(0)|答案(1)|浏览(92)

我有一个Electron项目,我安装了Helmet,我试图使用它与express,但我得到错误“Helmet不是一个函数”,在构建过程中。另外,在VScode中,我示例化的Helmet是蓝色的,而不是像其他示例化的变量那样是黄色的。
其他依赖项(如Morgan和Cors)没有触发此错误:

const express = require('express')
const cors = require('cors')
const helmet = require('helmet')
const morgan = require('morgan')
 
const app = express();
 
app.use(cors({ origin: process.env.CORS_ORIGIN || '*' }));
 
//error here
app.use(helmet());
 
app.use(express.json());
 
app.use(morgan('dev'));

我的package.json中的依赖项:

"dependencies": {
    "@mdi/font": "5.9.55",
    "core-js": "^3.8.3",
    "cors": "^2.8.5",
    "dotenv": "^16.0.3",
    "express": "^4.18.2",
    "helmet": "^6.0.0",
    "morgan": "^1.10.0",
    "roboto-fontface": "*",
    "socket.io": "^4.5.3",
    "vue": "^3.2.13",
    "vuetify": "^3.0.0-beta.0",
    "webfontloader": "^1.0.0",
    "ws": "^8.11.0"
  },
vohkndzv

vohkndzv1#

这是一个非常常见的问题,通常是由于实际安装或版本。
最好的办法是去你的 shell 和类型npm helmet uninstall卸载任何版本的 Helm 有。这可能需要一些时间。
接下来,返回到shell并使用cd [name of folder]输入包含所有文件的文件夹。然后,一旦你在文件夹中的所有文件,键入npm i helmet安装在正确的地方与正确的版本。希望这对你有帮助。
另一种方法是找到helm.exe在计算机上的安装位置。打开它。你可能会收到一条信息说它不安全。运行它并按照下面的说明进行操作。

相关问题