如何将运行 npm script (package.json)写入外部js文件?
How to run npm script (package.json) written in an external js file?
我知道它已经在不同的问题中有所涉及,但我的有点不同:
如果听起来真的很菜鸟,请提前道歉。
这是package.json中的脚本:
"start": "nodemon ./index.js --exec \"node -r babel-register\"",
我将其替换为:
"start": "node scripts/start.js",
在 start.js 中,我这样做:
const { execSync } = require('child_process')
execSync('nodemon ../index.js --exec \"node -r babel-register\"')
抛出错误:
/bin/sh: nodemon: command not found
我对“execSync”的理解正确吗?
我尝试在文件中导入 nodemon,但显然没有帮助。
如果 nodemon
是全局安装的,那么您正在做的事情应该有效,即:
npm install -g nodemon
但是如果它是作为项目依赖项安装的,即:
npm install --save-dev nodemon
然后您需要从包含所有本地安装的二进制文件的目录中 运行 它:node_modules/.bin/
所以这样的事情应该可行:
execSync('./node_modules/.bin/nodemon ../index.js --exec \"node -r babel-register\"')
我知道它已经在不同的问题中有所涉及,但我的有点不同: 如果听起来真的很菜鸟,请提前道歉。
这是package.json中的脚本:
"start": "nodemon ./index.js --exec \"node -r babel-register\"",
我将其替换为:
"start": "node scripts/start.js",
在 start.js 中,我这样做:
const { execSync } = require('child_process')
execSync('nodemon ../index.js --exec \"node -r babel-register\"')
抛出错误:
/bin/sh: nodemon: command not found
我对“execSync”的理解正确吗?
我尝试在文件中导入 nodemon,但显然没有帮助。
如果 nodemon
是全局安装的,那么您正在做的事情应该有效,即:
npm install -g nodemon
但是如果它是作为项目依赖项安装的,即:
npm install --save-dev nodemon
然后您需要从包含所有本地安装的二进制文件的目录中 运行 它:node_modules/.bin/
所以这样的事情应该可行:
execSync('./node_modules/.bin/nodemon ../index.js --exec \"node -r babel-register\"')