我是整个Node.js世界的新手,但这可能是一个简单的问题让我疯狂。它基本上是我在一个更大的项目中遇到的问题的简化版本。
文件结构
package.json
test1
我的package.json看起来像这样:
{
"name": "Temp",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"testscript": "test1",
"testrun":"yarn testscript"
}
}
test1只包含一个简单的console.log('test')
命令。
现在,当我做yarn testrun
时,我收到以下错误:
PS C:\dev\temp> yarn testrun
yarn run v1.9.4
$ yarn testscript
$ test1
'test1' is not recognized as an internal or external command,
operable program or batch file.
error Command failed with exit code 1.
如果文件有一个扩展名(即test1.js),那么它识别它并且有效。
在任何人说添加文件扩展名之前,这只是我创建的最简单的用例。有一个更大的项目,其中有这种东西,似乎适用于我所有的Linux和Mac朋友。
TIA,D
你想要node test1
。你现在所拥有的是尝试运行一个名为“test1”的不存在的程序。您希望现有的程序节点使用参数“test1”运行,该参数将告诉节点运行名为“test1.js”的JavaScript文件(或任何扩展名)。
考虑一下文档:yarn scripts
所以:
{
"name": "Temp",
"version": "1.0.0",
"main": "index.js",
"license": "MIT",
"scripts": {
"testscript": "node test1",
"testrun":"yarn testscript"
}
}