npx nodemon --exec babel-node 时babel-node不存在
使用这个命令时说babel-node不是内部文件或外部文件
但是使用npx babel-node src/index.js时是正常启动的
这是什么问题啊
正在回答 回答被采纳积分+1
其实`nodemon --exec babel-node src/index.js `并没有用到webpack打包,这节课的webpack配置是为以后课程做准备的。下面说说我的心得:
nodemon 默认采用类似于webpack 的watch功能来自动重启服务,内部其实还是调用了node命令。
--exec这个参数代表使用别的命令来代替node执行,即babel-node命令。这个命令先使用babel编译一次JS代码,再使用node执行,所以babel-node干了两件事情。
说一说那个错误:执行`nodemon --exec babel-node src/index.js `后报错:`babel-node`不是内部或外部命令,也不是可运行的程序。
这句命令放在package.json没啥毛病,但是在控制台执行就会报错,下面我讲讲我的理解:
课程中老师的babel-node是局部安装的,所以就算你直接输入`babel-node src/index.js `它还是会报错,在命令行想要执行局部安装的包,需要使用npx命令,所以可以试试这样:`nodemon --exec npx babel-node src/index.js `,意思就是在nodemon的监视下,调用局部的babel-node命令执行 src/index.js。
老师在视频中为什么没有报错呢?我猜老师是把`babel-node`这个命令安装在了全局,所以我们看到没有啥问题。
总结:package.json中的命令是会自动找相关的依赖包的,但是你在控制台需要借助npx。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星