我有以下package.json个npm模块

{
  "name": "my-app",
  "version": "0.0.0",
  "scripts": {
    "prepublish": "bower install",
    "build": "gulp"
  },
  "dependencies": {
    "express": "~4.0.0",
    "body-parser": "~1.0.1"
  },
  "devDependencies": {
    "gulp": "~3.6.0",
    "bower": "~1.3.2"
  }
}

当我将应用部署到生产环境时,我不想安装devDependecies,所以我运行npm install --production.但在本例中,调用了prepublish脚本,但它不需要调用,因为我在生产中使用CDN链接.

如何在npm install之后调用postinstall脚本,而不是在npm install --production之后调用postinstall脚本?

推荐答案

较新的npm(&;Thread)版本包括对prepare脚本的支持,该脚本在每次install次运行后运行,但仅在开发模式下运行.此外,prepublish已被弃用.这就足够了:

{
  scripts: {
    "prepare": "bower install"
  }
}

doctor :https://docs.npmjs.com/misc/scripts

Node.js相关问答推荐

postgresql层与应用层的序列化

如何使用多个OR参数从多个集合聚合

findoneandupdate()方法更新数据库,但其响应在请求中返回为null

未显示NPM版本

bcrypt.compare 每次都返回 false

Solidity 将数据位置从内存更改为存储

找不到模块bcryptjs

我应该转译我的 TypeScript 应用程序吗?

如何防止 Chrome 通过 Selenium 崩溃?

Typescript typeRoots 未检测到类型定义

Express.js - 监听请求中止

Discord.js V14 interaction.editReply 给出了一个无效的 webhook 令牌错误

使用 Node.js 在 MongoDB 中搜索

aws cdk 2.0 init 应用程序无法构建更漂亮的问题,这来自 jest-snapshot

Node.js、Cygwin 和 Socket.io 走进一家wine 吧……Node.js 抛出 ENOBUFS,所有人都死了

Node.js + Express:应用程序不会开始监听端口 80

__dirname 未在 Node 14 版本中定义

使用 node.js 循环 JSON

node.js 示例

promise 回调返回promise