gpt4 book ai didi

gulp - Babel 不会改变装饰器

转载 作者:行者123 更新时间:2023-12-04 18:36:55 25 4
gpt4 key购买 nike

如果我遗漏了一些明显的东西,请原谅我,我对 javascript、ES2015 等比较陌生。

我有一个 gulp 任务要运行 gulp-babel在我的 Aurelia应用。一切正常,除了包含装饰器的文件(Aurelia 的 @inject)

这些文件在 gulp-notify 中吐出相同的错误:

Error: (path-to-file)/nav-bar.js: Property right of AssignmentExpression expected node to be of a type ["Expression"] but instead got "Decorator"



我不确定如何开始解决这个问题。我的任务看起来像:
 gulp.task('build-system', function () {
return gulp.src(paths.source)
.pipe(plumber({errorHandler: notify.onError("Error: <%= error.message %>")}))
.pipe(changed(paths.output, {extension: '.js'}))
.pipe(sourcemaps.init({loadMaps: true}))
.pipe(babel(compilerOptions))
.pipe(sourcemaps.write({includeContent: true}))
.pipe(gulp.dest(paths.output));
});

和我的 compilerOptions :
 module.exports = {
moduleIds: false,
comments: false,
compact: false,
presets: ['es2015'],
plugins: ['syntax-decorators', 'transform-decorators']
};

任何见解将不胜感激!

最佳答案

我相信这是一个 babel v6 问题。 (这是您的 presets: ['es2015'] 暗示的)

如果你回到 babel v5.x(包含在骨架中)它应该可以工作。

这是the decorator issue在 Babel Phabricator 实例中。基于 this reply,它可能需要一段时间才能修复.

关于gulp - Babel 不会改变装饰器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33536380/

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