Node.js引入mongoose时出现TextEncoder未定义错误如何解决
解决方案
方法1:手动挂载全局TextEncoder
在项目入口文件的最顶部(所有require语句之前)添加如下代码,手动将Node.js内置的编码对象挂载到全局:
const { TextEncoder, TextDecoder } = require('util'); global.TextEncoder = TextEncoder; global.TextDecoder = TextDecoder;
添加完成后重新运行项目即可生效。
方法2:匹配mongoose与Node.js的版本兼容性
你当前使用的Node.js 16.5.0版本,不符合mongoose 7.x及以上版本的最低运行要求(mongoose 7+要求Node.js版本≥16.20.1),如果方法1不生效,可以安装适配Node.js 16.5.0的mongoose 6.x版本:
- 先卸载当前版本的mongoose
npm uninstall mongoose - 安装6.x稳定版
npm install mongoose@6.x
内容的提问来源于stack exchange,提问作者user16041868
相关产品推荐
相关产品推荐

