问题描述
我正在使用babel7来转译node.js 12代码,并且遇到猫鼬代码不再起作用的问题。我正在使用mongoose.Types.ObjectId.isValid来验证ObjectId值,并且在切换到babel7之前,这个工作很好。由于我切换到babel7,因此此代码出现以下错误:
TypeError:无法读取未定义的属性'ObjectId'。
{
"presets": [
["@babel/preset-env"]
],"plugins": [
"@babel/plugin-proposal-class-properties","@babel/plugin-proposal-object-rest-spread","@babel/plugin-transform-async-to-generator","@babel/plugin-transform-strict-mode","@babel/plugin-transform-destructuring",["@babel/plugin-transform-runtime",{
"corejs": 3,"useESModules": false
}]
]
}
我添加了 @ babel / plugin-transform-destructing 插件,以为这可能是babel转堆造成的破坏性问题,但该问题仍然存在。
我最初使用以下导入语句访问代码中的猫鼬:
从“猫鼬”导入猫鼬;
这是我的package.json文件中babel的软件包:
"@babel/cli": "^7.12.1","@babel/core": "^7.12.3","@babel/node": "^7.12.1","@babel/plugin-proposal-class-properties": "^7.12.1","@babel/plugin-proposal-object-rest-spread": "^7.12.1","@babel/plugin-transform-async-to-generator": "^7.12.1","@babel/plugin-transform-destructuring": "^7.12.1","@babel/plugin-transform-modules-commonjs": "^7.10.4","@babel/plugin-transform-runtime": "^7.12.1","@babel/plugin-transform-strict-mode": "^7.12.1","@babel/preset-env": "^7.12.1","@babel/register": "^7.12.1","@babel/runtime-corejs3": "^7.12.5",
这是我用来启动服务器的启动命令:
节点dist / bin / www.js
这是我用来翻译代码的命令:
node_modules / .bin / babel src -d dist
服务器启动并侦听端口,但是当访问端点访问ObjectId属性时,它将引发异常。我对问题可能出在哪里感到困惑,任何帮助将不胜感激。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)