gpt4 book ai didi

node.js - 如何在运行 npm 脚本之前加载依赖项?

转载 作者:搜寻专家 更新时间:2023-11-01 00:18:08 26 4
gpt4 key购买 nike

我想使用 npm 进行简单构建(受 this article 启发)。我的 package.json 中有一个单行 script,它通过 require 依赖于 Node 模块 ( markdown-pdf )(不是二进制文件。)

我的测试设置是一个包含单个 package.json 文件和最新版本的 npmnode 的项目目录:

$ echo "npm: $(npm -v), node: $(node -v)"
npm: 1.4.28, node: v0.10.35
$ ls -a
./ ../ package.json

这是我的package.json:

{
"name": "mytest",
"version": "0.0.1",
"devDependencies": {
"markdown-pdf": "latest"
},
"scripts": {
"test": "node -e \"require('markdown-pdf');\""
}
}

npm test 失败,因为在运行 test 脚本之前未安装所需的模块:

$ npm test

> mytest@0.0.1 test /Users/me/mytest
> node -e "require('markdown-pdf');"


module.js:340
throw err;
^
Error: Cannot find module 'markdown-pdf'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at [eval]:1:1
at Object.<anonymous> ([eval]-wrapper:6:22)
at Module._compile (module.js:456:26)
at evalScript (node.js:559:25)
at startup (node.js:80:7)
at node.js:929:3
npm ERR! Test failed. See above for more details.
npm ERR! not ok code 0

是否可以在单个 package.json 文件中使依赖项可用于 JavaScript 脚本?

最佳答案

这可能不是 npm 的使用方式,但这应该可行

{
"name": "mytest",
"version": "0.0.1",
"devDependencies": {
"markdown-pdf": "latest"
},
"scripts": {
"pretest": "npm install",
"test": "node -e \"require('markdown-pdf');\""
}
}

运行 npm test 会首先自动运行 pretestSource

关于node.js - 如何在运行 npm 脚本之前加载依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28129436/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com