首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gulp + rollup + Babel:构建失败

Gulp + rollup + Babel:构建失败
EN

Stack Overflow用户
提问于 2018-02-15 16:24:44
回答 1查看 956关注 0票数 1

我想把我的一个旧模块重写为ESNext。为了捆绑它,我使用Rollup,编译它回来,当然,我使用Babel。所有这些都是由古尔普管弦乐队演奏的。

到目前为止,所有这些都进行得很顺利,同时升级到Babel v7、Gulp v4和最新版本的rollup (v0.56.0)。但是现在,由于我打算在我的babel配置中包括useBuiltIns: true,所以我不必担心填充问题,所以我会得到一个由rollup引发的错误:

代码语言:javascript
复制
TypeError: Cannot read property 'code' of null
at error (/Users/robin.loeffel/Sites/misc/jz2/node_modules/rollup/dist/rollup.js:168:15)
at Object.error (/Users/robin.loeffel/Sites/misc/jz2/node_modules/rollup/dist/rollup.js:17916:21)
at /Users/robin.loeffel/Sites/misc/jz2/node_modules/rollup/dist/rollup.js:17925:29
at <anonymous>

你可以看看我的吞咽文件这里。很简单。我使用rollup-stream与gulp集成,并使用rollup-plugin-babelrollup-plugin-uglifyrollup-plugin-node-resolverollup-plugin-commonjs作为插件。下面是我如何集成它的一个例子,如果您没有时间查看整个过程:

代码语言:javascript
复制
gulp.task('make:iife:min', () => {
    return rollupStream({
        input: config.paths.index,
        output: {
            format: 'iife',
            name: 'jazzer'
        },
        plugins: [
            rollupNodeResolve(),
            rollupCommonJs(),
            rollupBabel(config.babel),
            rollupUglify()
        ],
        rollup: rollup
    })
    .pipe(source('jazzer.min.js'))
    .pipe(gulp.dest(config.paths.dist));
});

我的Babel配置如下:

代码语言:javascript
复制
{
    presets: [
        ['@babel/preset-env', {
            targets: {
                ie: 11,
                browsers: 'last 2 versions'
            },
            useBuiltIns: 'usage',
            modules: false,
            debug: true
        }]
    ],
    ignore: ['node_modules']
}

当我用rollupNodeResolve评论行,禁用插件时,它会编译,但会给我一个警告,比如'regenerator-runtime/runtime' is imported by src/jazzer.js, but could not be resolved – treating it as an external dependency。注释掉ignore: ['node_modules']会导致Babel导入太多的东西并产生83 kb的包,所以这也不是一种方法。

希望有人能帮我!和下面是整个回购,如果你想看看它,看看自己。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-15 21:04:44

这是rollup插件中的一个bug。我已经帮你归档了:https://github.com/rollup/rollup-plugin-babel/issues/192

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48811861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档