2

我正在尝试设置一个简单的快速服务器。我正在使用 nodemon 启动我的开发服务器但是我的应用程序不断崩溃,因为它无法识别“babel-node”命令。

错误输出是

[nodemon] 2.0.7
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: js,json
[nodemon] starting `babel-node index.js`
'babel-node' is not recognized as an internal or external command,
operable program or batch file.
[nodemon] app crashed - waiting for file changes before starting...

我的 package.json 脚本是

"scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "startdev": "nodemon --ext js,json  --exec babel-node index.js",
    "start": "babel-node index.js"
  }

我的依赖项和开发依赖项是

"dependencies": {
    "express": "^4.17.1",
    "express-graphql": "^0.12.0",
    "graphql": "^15.4.0",
    "uuid": "^8.3.2"
  },
  "devDependencies": {
    "@babel/cli": "^7.12.10",
    "@babel/core": "^7.12.10",
    "@babel/node": "^7.12.10",
    "@babel/plugin-proposal-object-rest-spread": "^7.12.1",
    "@babel/preset-env": "^7.12.11",
    "nodemon": "^2.0.7"
  }

我尝试使用常规 node 命令在没有 nodemon 的情况下对其进行测试,它按预期运行


$ npm run start

> dev_forum@1.0.0 start
> babel-node index.js

Server is up...

我的文件夹结构如下

在此处输入图像描述

index.js 的内容是

const express = require("express");


const app = express();

app.listen(() => {
    console.log("Server is up...")
})

我也尝试删除我的 node_modules 和 package-lock.json 文件并重新安装但仍然崩溃..

(*这是我的第一个问题;))

4

3 回答 3

5

删除您的 node_modules 并按照以下步骤操作:

 npm install --save-dev @babel/core @babel/cli @babel/preset-env @babel/node

然后,检查这些文件是否存在:

node_modules/.bin/babel-node

node_modules/.bin/babel-node.cmd - 仅限 Windows

node_modules/@babel/node/bin/babel-node.js

如果一切看起来都不错,请添加到 package.json:

"start": "nodemon --exec babel-node index.js",
于 2021-01-21T12:43:07.860 回答
2

我遇到了同样的问题并以这种方式解决了它:

"scripts": {
    "start": "babel-node src/index.js",
    "dev"  : "nodemon --exec npm start"
  }

在终端运行

npm run dev
于 2021-12-15T12:07:45.700 回答
1

上述步骤都不适合我。我改用纱线。删除你的 package-lock.json 然后执行: yarn 这将添加依赖项,然后你可以运行它,很可能使用 yarn run dev (当然这取决于你在 package.json 上的脚本)。

于 2021-11-02T22:21:17.763 回答