node.js - Express 4.0.0 生成已弃用的依赖项和漏洞

标签 node.js express

已安装 Ubuntu 18.04 LTS 存储库中的所有默认版本:

nvm 0.35.0
node v10.16.3
npm 6.9.0
express 4.0.0

以下所有命令(在 express starter tutorial 和几个 StackOverflow 问题和博客中提供)

express app --view=pug
express --view pug
express --pug

像这样生成package.json:

{
  "name": "application-name",
  "version": "0.0.1",
  "private": true,
  "scripts": {
    "start": "nodejs ./bin/www"
  },
  "dependencies": {
    "express": "~4.0.0",
    "static-favicon": "~1.0.0",
    "morgan": "~1.0.0",
    "cookie-parser": "~1.0.1",
    "body-parser": "~1.0.0",
    "debug": "~0.7.4",
    "jade": "~1.3.0"
  }
}

运行 npm install 当然会产生 jade 的折旧警告,并且还会报告 constantinople@2.0.1 的严重漏洞>.

这不是一个好的开始,不是吗?

问题:如何使用express-generator(或其他方式)获得工作和当前的启动?

最佳答案

  • 请使用npx express-generator获取最新版本的express。
  • 在 package.json 中删除 Jade
  • 安装 Pug(Jade 已重命名为 pug)npm install pug
  • 再次运行npm install
  • 在 app.js 中将 app.set('view engine', 'jade'); 更改为 app.set('view engine', 'pug');
  • views文件夹中,将所有的jade文件重命名为pug。例如:index.jade ->index.pug
  • 运行 npmaudit 再次检查是否存在任何漏洞

关于node.js - Express 4.0.0 生成已弃用的依赖项和漏洞,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58466180/

相关文章:

node.js - 如何刷新 Google Analytics Reporting API v3 的访问 token

javascript - 在 docker 中运行 ionic 框架不会创建本地文件夹/文件

bash - 程序化保管箱共享

php - Node.js API 与 express 和 mysql - 仅在设置时应用搜索参数

javascript - 使用 expressjs 和 jade 的动态 (i18n) 链接

javascript - 使用 sequelize 用不同的值一次更新多条记录

node.js - 如何在页面刷新后保持登录状态?

node.js - 无法使用 mongoose 在 mongodb 中持久化对象数组

node.js - 我是否必须使用 ngrok 来公开 MERN 堆栈的前端和后端才能使 CRUD 操作正常工作?

node.js - 如何将 Sails.js 应用程序安装为快速中间件