React Native Android报regeneratorRuntime未定义错误求解决方案
regeneratorRuntime is not defined Error in React Native Android Hey there, I’ve run into this exact issue before—iOS works smoothly but Android throws that pesky regeneratorRuntime error. It almost always boils down to Babel not being configured to handle generator functions (like those used in async/await) on Android. Let’s walk through the universal fixes that usually resolve this:
Step 1: Install Required Babel Dependencies
First, we need to add Babel plugins that provide the regeneratorRuntime globally. Run one of these commands in your project root:
# Using Yarn yarn add @babel/plugin-transform-runtime @babel/runtime --dev # Or using npm npm install @babel/plugin-transform-runtime @babel/runtime --save-dev
Step 2: Update Your Babel Configuration
Next, tell Babel to use the plugin. Depending on your project setup, you’ll edit either babel.config.js or .babelrc:
If you have babel.config.js:
Replace its contents with this (or add the plugins section if it already exists):
module.exports = { presets: ['module:metro-react-native-babel-preset'], plugins: [ ['@babel/plugin-transform-runtime', { "helpers": true, "regenerator": true }] ] };
If you have .babelrc:
Update it to look like this:
{ "presets": ["module:metro-react-native-babel-preset"], "plugins": [ ["@babel/plugin-transform-runtime", { "helpers": true, "regenerator": true }] ] }
Step 3: Clear All Caches & Rebuild
Just running ./gradlew clean isn’t enough—we need to clear Metro’s cache too, since it might be holding onto old compiled code. Run these commands in order:
# Reset Metro's cache npx react-native start --reset-cache # Clean Android build files and rebuild cd android && ./gradlew clean && cd .. && npx react-native run-android
Why This Works (And Why iOS Was Fine)
iOS’s JavaScriptCore engine often includes partial support for generator functions out of the box, so you don’t hit this error there. Android’s engine (especially older versions or when using Hermes) requires explicit Babel configuration to provide regeneratorRuntime for async code or libraries that use generators.
Your Error Screenshot For Reference:

内容的提问来源于stack exchange,提问作者Kamran Akbary

