gpt4 book ai didi

javascript - 将 async/await 与 babel 一起使用时 regeneratorRuntime is not defined 错误

转载 作者:数据小太阳 更新时间:2023-10-29 04:43:23 24 4
gpt4 key购买 nike

我正在使用异步/等待代码,并且收到“regeneratorRuntime 未定义错误”。我已经尝试了堆栈溢出的几种解决方案,但我无法使它们中的任何一种起作用。这是我的配置:

webpack.config.js:

module.exports = {    
entry: ['babel-polyfill', './client/libs/compileTemplate/entry.jsx', './client/libs/compileTemplate/loginEntry.jsx'],
output: {
path: '/dist',
publicPath: '/assets',
filename: '[name].js'
},
plugins: plugins,
externals: {},
module: {
loaders: require('./webpack.config.loaders')
},

...

webpack.config.loaders.js:

module.exports = [
{
test: /\.jsx$/,
loader: 'babel',
query: {
presets: ['es2015', 'stage-0', 'react'],
}
},
];

包.json: “devDependencies”:{ “巴贝尔核心”:“^6.7.5”, “babel-loader”:“^6.2.4”, "babel-polyfill": "^6.26.0", "babel-preset-es2015": "6.16.0", "babel-preset-react": "6.16.0", "babel-preset-stage-0": "^6.24.1", “json-loader”:“^0.5.4”, “较少装载机”:“2.2.3”

我在 entry.jsx 文件的顶部也有 require("babel-core/register")。

请让我知道哪里出错了。

最佳答案

好的,有几件事解决了我的问题。

1) npm i -S babel-preset-env babel-polyfill 并在我的 webpack.config.js 中添加了“env”,它一次性处理 es2015、es2016 和 es2017:

module: {
loaders: [
{ test: /\.jsx$/, loader: 'babel-loader', query: { presets: ['env', 'react'] } },
]
},


entry: [ './client/libs/compileTemplate/entry.jsx', './client/libs/compileTemplate/loginEntry.jsx'],

2) 在我的 entry.jsx 中我有:

async function createSessionInfo() { // stuff here };

它被提升到我在 webpack 中的 require('babel-polyfill') 语句之上,所以我将其更改为:

require('babel-polyfill');
const createSessionInfo = async function() {

瞧,问题解决了。哦,确保你有最新的 babel-core 和 babel-loader。

关于javascript - 将 async/await 与 babel 一起使用时 regeneratorRuntime is not defined 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47024780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com