开发者问题收集

Node.js v17.5.0 [nodemon] 应用程序崩溃 - 启动前等待文件更改

2022-02-20
666

使用 mongodb 创建 node.js 连接。

MongoDb 连接错误

未获取应用程序正在运行 8000 并显示“nodemon 应用程序在启动前等待文件更改而崩溃”

const mongoose = require('mongoose');

const express = require("express");

const app=express();

mongoose.connect('mongodb://localhost:27017/test', {useNewUrlParser:true});

const port=8000;

app.listen(port,()=>{
    console.log(`App is running at ${port}`);
}); 

导致错误:

TypeError:无法分配给对象“#”的只读属性“map” at Object。 (/Users/praneypareek/Desktop/MERN 工作项目/projbackend/node_modules/mongoose/lib/cursor/QueryCursor.js:150:27) 在 Module._compile (node:internal/modules/cjs/loader:1097:14) 在 Object.Module._extensions..js (node:internal/modules/cjs/loader:1151:10) 在 Module.load (node:internal/modules/cjs/loader:975:32) 在 Function.Module._load (node:internal/modules/cjs/loader:822:12) 在 Module.require (node:internal/modules/cjs/loader:999:19) 在 require (node:internal/modules/cjs/helpers:102:18) 在 Object. (/Users/praneypareek/Desktop/MERN 工作项目/projbackend/node_modules/mongoose/lib/query.js:12:21) 在 Module._compile (node:internal/modules/cjs/loader:1097:14) 在 Object.Module._extensions..js (node:internal/modules/cjs/loader:1151:10) 在 Module.load (node:internal/modules/cjs/loader:975:32) 在 Function.Module._load (node:internal/modules/cjs/loader:822:12) 在 Module.require (node:internal/modules/cjs/loader:999:19) 在 require (node:internal/modules/cjs/helpers:102:18) 在 Object. (/Users/praneypareek/Desktop/MERN 工作项目/projbackend/node_modules/mongoose/lib/index.js:27:15) 位于 Module._compile (node:internal/modules/cjs/loader:1097:14)

Node.js v17.5.0 [nodemon] 应用程序崩溃 - 正在等待文件更改后再启动...

1个回答

Node.JS 的最新版本是导致此问题的原因。在您的 package.json 中,确保将您的引擎设置为“engines”:{“node”:“>=0.12 < 17.5.0”},这样就没问题了。

对我来说很有效的解决方案:)

步骤 01:打开您的终端并复制粘贴以下命令。

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | zsh

耐心等待完成。

步骤 02:sudo vim ./zshrc

步骤 03:按 I 进入插入模式并复制粘贴以下命令。三行必须相同。

export NVM_DIR="$HOME/.nvm"

[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"

[ -s "$NVM_DIR/bash_completion" ] && . "$NVM_DIR/bash_completion"

然后按 ESC 键 :wq (写入并退出)。

步骤 04:brew install nvm

步骤 05:nvm install node(将下载最新版本的 node)

步骤 06:nvm ls-remote(使所有版本可用)

步骤 07:nvm install 14(示例)

步骤 08:nvm use 14(这使其成为默认版本)

来源: https://github.com/nvm-sh/nvm

Praney Pareek
2022-02-20