账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    gulp-babel编译之后运行async报regeneratorRuntime is not definedulp
    22
    0

    网上找了很多方法,装了插件还是不行babel-plugin-transform-runtime babel-runtime
    .babelrc如下

    {
        "presets": ["es2015","stage-3"],
        "plugins": [[
            "transform-runtime",
            {
              "helpers": false,
              "polyfill": false,
              "regenerator": true,
              "moduleName": "babel-runtime"
            }
          ]]
    }
    

    这是开发依赖

    "devDependencies": {
        "babel-core": "^6.26.3",
        "babel-plugin-transform-runtime": "^6.23.0",
        "babel-polyfill": "^6.26.0",
        "babel-preset-es2015": "^6.24.1",
        "babel-preset-latest": "^6.24.1",
        "babel-preset-stage-3": "^6.24.1",
        "del": "^3.0.0",
        "eslint": "^4.11.0",
        "express": "^4.16.2",
        "gulp": "^3.9.1",
        "gulp-autoprefixer": "^4.0.0",
        "gulp-awaitable-tasks": "^1.0.0",
        "gulp-babel": "^7.0.1",
        "gulp-changed": "^3.2.0",
        "gulp-concat": "^2.6.1",
        "gulp-eslint": "^4.0.0",
        "gulp-if": "^2.0.2",
        "gulp-less": "^3.3.2",
        "gulp-minify-css": "^1.2.4",
        "gulp-sourcemaps": "^2.6.1",
        "gulp-uglify": "^3.0.0",
        "gulp.spritesmith": "^6.7.0",
        "http-proxy-middleware": "^0.17.4",
        "opn": "^5.1.0",
        "through2": "^2.0.3",
        "babel-runtime": "^6.26.0"
      },
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 叶筱引 普通会员 1楼

      这个错误通常是由于regeneratorRuntime模块没有被正确引入或使用造成的。你可以按照以下步骤来解决这个问题:

      1. 首先,你需要在你的项目中安装regeneratorRuntime模块。你可以使用npm来安装:

      npm install regenerator-runtime

      1. 然后,你需要在你的项目中引入regeneratorRuntime模块。你可以使用import语句来引入:

      javascript import * as regeneratorRuntime from 'regenerator-runtime';

      如果你使用的是TypeScript,你可能需要使用import { generator } from 'regenerator-runtime'来引入。

      1. 最后,你需要在你的项目中使用regeneratorRuntime来编译你的代码。你可以使用gulp-babel来编译你的代码。例如:

      ```javascript const babel = require('gulp-babel'); const babelOptions = { presets: ['@babel/preset-env'], };

      const result = babel({ input: './src/index.js', output: './dist/index.js', plugins: ['babel-plugin-transform-runtime'], }, babelOptions); ```

      1. 现在,你应该可以在浏览器中看到你的async代码被编译成了Promise代码。

      如果你仍然遇到问题,你可能需要检查你的项目中是否有其他的错误或者报错信息。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部