javascript - 我的包的 NPM 构建阶段在安装期间未执行
问题描述
我正在开发一个包以通用方式使用网络工作者,但在尝试将其添加为另一个项目的依赖项时发现了一些问题。
通常,我希望在执行此操作时拥有我的构建脚本部分,它将被自动称为生成. 但它似乎没有执行任何操作。我对应该如何工作有任何误解吗?package.json
install
rollup.config.js
npm build
如果不是,则有任何其他冲突脚本package.json
导致它在下一个文件示例中不起作用:
{
"name": "web-threads",
"version": "1.0.5",
"description": "generic threads using web workers for the web",
"main": "dist/web-threads.js",
"scripts": {
"build": "rollup -c",
"test": "jest",
"test:dev": "jest --watchAll test/unit",
"test:int": "jest test/integration",
"test:cov": "jest --coverage && cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
"push": "yarn test && git push",
"deploy:major": "yarn version --major",
"deploy:minor": "yarn version --minor",
"deploy:patch": "yarn version --patch",
"deploy:push": "git push && git push --tags",
"preversion": "yarn test"
},
"keywords": [""],
"repository": "",
"author": "",
"license": "MIT",
"private": false,
"devDependencies": {
"babel-jest": "23.4.2",
"babel-preset-env": "1.7.0",
"babel-preset-stage-0": "6.24.1",
"coveralls": "3.0.2",
"faker": "4.1.0",
"jest": "23.5.0",
"jest-puppeteer": "3.3.1",
"puppeteer": "1.7.0",
"rollup": "0.65.0",
"rollup-plugin-babel": "3.0.7",
"rollup-plugin-uglify": "4.0.0",
"uglify-es": "3.3.9"
},
"babel": {
"presets": ["env","stage-0"]
},
"jest": {
"testMatch": [
"**/test/**/*-test.js"
],
"transform": {
"^.+\\.jsx|.js?$": "babel-jest"
}
}
}
我还将依赖项移至不存在devDependencies
,但它无助于解决问题。
NPM 构建文档:https ://docs.npmjs.com/cli/build
解决方案
您可以尝试添加postinstall
脚本。如npm 文档中所述
postinstall:安装包后运行。
推荐阅读
- mainframe - 使用 SYNCSORT (JOINKEYS) 连接 2 个数据集,是否可以以任何方式对某些值进行通配符?
- ios - 变量没有更新
- r - 如何将第一行的列值乘法添加到组中的所有其他行?
- sql - DATEDIFF 导致将日期数据类型转换为日期时间数据类型导致值超出范围
- python - 基于另一个列表python对列表进行排序
- html - Bootstrap 4,处理响应式 div
- python - 从字符串源修改 XML 文件 - 怎么做?
- android - Firebase 性能监视器导致“D8:不支持的源文件类型”
- bash - 合并文件后 .csv 文件中不需要的断线
- apache-spark - Spark 未提供 Hive 中可用的更新结果