鍍金池/ 問答/HTML/ webpack 如何關閉 strict mode

webpack 如何關閉 strict mode

開發(fā)過程中使用了 with 語句,webpack 編譯不了了

原因是 strict mode 不能使用 with ,但是怎么關閉 strict mode ?

webpack :4.8.3  babel :6.26.3

另外網(wǎng)上搜到的 babel-plugin-transform-remove-strict-mode 這個插件也用了,還是編譯不通過。

.babelrc 文件

{
  "presets": [
    "es2015"
  ],
  "plugins": [
    "transform-remove-strict-mode",
    [
      "import",
      {
        "libraryName": "ramda",
        "libraryDirectory": "src",
        "camel2DashComponentName": false
      }
    ]
  ]
}
回答
編輯回答
冷咖啡

先說個我的結論,在使用 ESM 模塊化語法的情況下關不了,當然結論可能是片面的。
原來碰到過 callee 嚴格模式不存在的問題,經(jīng)過我使用 loader,plugin 等均無法拿到添加 use strict 字符串的具體時機,然后我就放棄了,transform-remove-strict-mode 也試過無效。

但是有一種方式可以不被添加 use strict 字符串,那就是在你需要使用 "嚴格模式禁用語法" 的這個 js 文件里不要使用 ESM(import export),而是使用 commonjs 模塊語法,即 requiremodule/export。ESM 規(guī)范中有一條是說使用 ESM 規(guī)范語法會自動進入嚴格模式,所以不確定這個 use strict 是不是 node 加上的,而不是 webpack/babel 的效果。

2017年5月13日 16:00
編輯回答
伴謊

建議不要使用with

2017年11月16日 20:39