带有ES2015 babel预设的Marionette不起作用

时间:2015-12-23 13:03:53

标签: javascript ecmascript-6 marionette babeljs es2015

我正在使用带有babel-loader的Webpack,预设了es2015的东西,我看到了这个麻烦:当包括Marionette(v.2.4.3)es2015预设更改this agrument在/lib/core/backbone.marionette.js:26undefined而不是this。但是这个论点采用root变量(line 10),他看,什么参数是undefined(不是this)和输出错误。

我看到es2015预设包括babel-plugin-transform-es2015-modules-commonjs,包含babel-plugin-transform-strict-mode的内容,严格模式的响应以及关闭es6模块的响应。

我尝试修改es2015插件,将require("babel-plugin-transform-es2015-modules-commonjs")更改为[require("babel-plugin-transform-es2015-modules-commonjs"), {"strict": false}],但此步骤并不能帮助我解决问题。

谁知道,Marionette存在这个问题,es2015预设babel-loader或与我有关,以及如何解决?

1 个答案:

答案 0 :(得分:1)

我解决了我的问题。我的解决方案是在modules-commonjs中允许顶级。

babel-preset-es2015中将require("babel-plugin-transform-es2015-modules-commonjs")更改为[require("babel-plugin-transform-es2015-modules-commonjs"), { allowTopLevelThis: true }]