Marionette ES2015 babel 预设不工作
Marionette with ES2015 babel preset dont work
我正在使用带有 babel-loader 的 Webpack,预设 es2015
,我看到这个问题:当包含 Marionette (v.2.4.3) es2015
预设更改时this
agrument in /lib/core/backbone.marionette.js:26 to undefined
instead this
. But this argument take root
variable (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 或 babel-loader
中预设的 es2015
或我的这个问题,如何解决?
我解决了我的问题。我的解决方案是在 modules-commonjs 中允许顶层。
在 babel-preset-es2015
中将 require("babel-plugin-transform-es2015-modules-commonjs")
更改为 [require("babel-plugin-transform-es2015-modules-commonjs"), { allowTopLevelThis: true }]
我正在使用带有 babel-loader 的 Webpack,预设 es2015
,我看到这个问题:当包含 Marionette (v.2.4.3) es2015
预设更改时this
agrument in /lib/core/backbone.marionette.js:26 to undefined
instead this
. But this argument take root
variable (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 或 babel-loader
中预设的 es2015
或我的这个问题,如何解决?
我解决了我的问题。我的解决方案是在 modules-commonjs 中允许顶层。
在 babel-preset-es2015
中将 require("babel-plugin-transform-es2015-modules-commonjs")
更改为 [require("babel-plugin-transform-es2015-modules-commonjs"), { allowTopLevelThis: true }]