Babel 6反应JSX变压器
问题
我使用babel 6来反应JSX转换。 但是我没有使用反应预设,我只使用'transform-react-jsx'插件(并尝试严格模式禁用选项),这里是我的.babelrc
{
"plugins": [
["transform-react-jsx"]
],
"sourceMaps": true,
"strictMode": false
}
然而,我已经需要第三方javascript使用'with'(超出我的控制),它会发出以下错误:[SyntaxError:foo.js:'with'in strict mode ..]
所以我需要禁用严格模式,这与此问题相同的问题,但我不使用es6 / es2015的东西,只有jsx转换。
随着babel 6没有黑名单,我只指定了一个插件,所以我怀疑没有办法禁用。
根据这条线, strictMode
选项确实被解析。
不过,我不明白你用于.babelrc的语法。 为什么是数组?
尝试这个:
{
"plugins": [
["transform-react-jsx"]
],
"sourceMaps": true,
"strictMode": false
}
transform-strict-mode仅用于包含严格模式而不禁用它。 因此,将其设置为false ["transform-strict-mode", {"strict": false}]
将不会改变,在您的情况下,最好删除此插件并将其包含在内。 但是,如果你正在使用包含严格模式的插件或预设,请尝试使用es2015-loose:
安装
npm install --save-dev babel-preset-es2015-loose babel-preset-es2015
配置
{"presets": ["es2015-loose"]}
上一篇: Babel 6 react JSX transformer
下一篇: gulp: browserify/babelify build script, unexpected token