Babel 6 реагирует на трансформатор JSX - отключить строгую
Вопрос
Я использую babel 6 для обработки преобразований JSX. Однако я не использую предустановленную реакцию, я ТОЛЬКО использую плагин "transform-react-jsx" (и пытается отключить режим строгого режима), вот мой .babelrc
{
"plugins": [
["transform-react-jsx"]
],
"sourceMaps": true,
"strictMode": false
}
Однако мне нужен javascript третьей стороны, который использует "с" (из моего контроля), который испускает следующую ошибку:
[SyntaxError: foo.js: 'with' в строгом режиме.]
Поэтому мне нужно отключить строгий режим. Это та же проблема, что и эта проблема, однако я НЕ использую вещи es6/es2015, только jsx transforms.
С babel 6 нет черного списка, и я только указал ONE плагин, поэтому я подозреваю, что отключить его невозможно.
Ответы
Ответ 1
В соответствии с эта строка параметр strictMode
действительно разобран.
Я не понимаю синтаксис, который вы использовали для . babelrc. Почему массив?
Попробуйте следующее:
{
"plugins": [
["transform-react-jsx"]
],
"sourceMaps": true,
"strictMode": false
}
Ответ 2
transform-strict-mode используется только для включения строгого режима, чтобы отключить его. Поэтому установка его на false ["transform-strict-mode", {"strict": false}]
ничего не изменит, в вашем случае лучше удалите этот плагин, а затем включите его.
Но если в другом месте вы используете плагин или пресет, который включает строгий режим, попробуйте, возможно, использовать es2015-loose: