Rik*_*Rik 5 node.js npm nodemon package.json
我想让我的package.json能够在npm 5.5.1的Windows 10上使用命令npm run test-watch运行。在我的package.json中:
"scripts": {
"test": "mocha server/**/*.test.js",
"test-watch": "nodemon --exec 'npm test'"
}
Run Code Online (Sandbox Code Playgroud)
但是,我这奇怪地解释了代码,在其中只有一个引号。我实际上正在学习Udemy课程,因此它似乎对教师有用。但是,这是我得到的输出:
PS D:\courses\node-course\node-todo-api> npm run test-watch
> todo-api@1.0.0 test-watch D:\courses\node-course\node-todo-api
> nodemon --exec 'npm test'
[nodemon] 1.14.7
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `'npm test'`
''npm' is not recognized as an internal or external command,
operable program or batch file.
[nodemon] app crashed - waiting for file changes before starting...
Run Code Online (Sandbox Code Playgroud)
我需要进行哪些更改才能使其正常工作?看来是在字符串上保留引号。我似乎无法解决它。当我直接运行命令时,它可以工作:
PS D:\courses\node-course\node-todo-api> nodemon --exec 'npm test'
[nodemon] 1.12.1
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `npm test`
> todo-api@1.0.0 test D:\courses\node-course\node-todo-api
> mocha server/**/*.test.js
started on port 3000
Post /todos
? should create a new todo (50ms)
1 passing (1s)
Run Code Online (Sandbox Code Playgroud)
不幸的是,使用npm时,操作系统和外壳会引起严重的头痛。有些事情可以在一台计算机上运行,而有些则可以在另一台计算机上运行。
但这两个都应在Windows 10上运行:
"test-watch": "nodemon --exec \"npm test\""
"test-watch": "nodemon --exec npm test"
Run Code Online (Sandbox Code Playgroud)