在写nodejs项目的过程中,我删除数据库中的一些数据时候,先做各种条件的判断,满足后再删除数据。第一次删除时候,可以成功删除,紧接着重复一个删除刚才的动作,则会出现如下错误:
events.js:160
throw er; // Unhandled 'error' event
^
Error: write after end
at ServerResponse.OutgoingMessage.write (_http_outgoing.js:439:15)
at F:\SL\userHandler.js:355:35
at F:\SL\mon.js:84:5
at handleCallback (F:\SL\node_modules\mongodb\lib\utils.js:120:56)
at F:\SL\node_modules\mongodb\lib\collection.js:1243:5
at F:\SL\node_modules\mongodb-core\lib\connection\pool.js:461:18
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
网上查下了下有的说nodejs版本太高,有的从7降到6就可以了,我的版本就是6点几的。
解决办法:
我在每个判断条件后都添加一个return;语句,解决上述问题。