node.js - Babel 7:regeneratorRuntime 未定义错误
问题描述
我有一个在后端有节点 js 的应用程序。在开发方面它工作正常。但是在带有构建/编译代码的产品中,我收到了这个错误 ReferenceError: regeneratorRuntime is not defined
我已经尝试过这个解决方案,但它对我不起作用
babel.config.json
{
"presets": [
[
"@babel/preset-env",
{
"targets": {
"node": "current"
}
}
]
],
"plugins": ["@babel/plugin-proposal-object-rest-spread", "@babel/plugin-transform-runtime"]
}
调用db连接文件的入口文件server.js
import "core-js/stable"
import "regenerator-runtime/runtime"
require("dotenv").config()
import db from "./db"
const init = async () => {
try {
await db()
} catch (err) {
throw new Error(err)
}
const opts = {
port: process.env.PORT || 4000,
cors: {
origin: process.env.FRONTENDURL,
credentials: true
}
}
const server = require("./graphql/index")
server.start(opts, t => {
console.log(`server is up ${opts.port}`)
})
}
init()
产生错误的 db 文件
const mongodb = require("mongodb")
export default () => {
return new Promise((resolve, reject) => {
mongodb.connect(process.env.CONNECTIONSTRING, { useNewUrlParser: true, useUnifiedTopology: true }, function (err, client) {
if (err) {
return reject(err)
}
module.exports = client
return resolve()
})
})
}
也是 packagejson 中的构建脚本
"scripts": {
"build": "babel src --out-dir dist --copy-files",
},
解决方案
推荐阅读
- c# - InRequestScope 的作用类似于 InTransientScope
- sql-server - 使用临时表而不是 CTE 的递归查询?
- javascript - Sequelize .set 错误,.set 不是函数
- python-3.x - 如何自动化 Selenium 以根据另一个 Web 元素值单击一个 Web 元素?
- opencv - 从立体设置获得的坐标的参考点/原点是什么?(OpenCV)
- android - 撤消 Androidx 迁移?
- angular - 如何使用 Material Design MatTableModule 修复 stackblitz ngcc 错误?
- python - 自从我从 macOS 切换到 Windows 后出现 JSON 解码错误
- python - 如何删除每行中的多个空格并替换为单个空格?
- c++ - Qt: memcpy failed..如何复制?