5 source map

source map的使用

devtool

此選項(xiàng)控制是否生成,以及如何生成 source map。

使用 SourceMapDevToolPlugin 進(jìn)行更細(xì)粒度的配置。查看 source-map-loader 來處理已有的 source map。

選擇一種 source map 格式來增強(qiáng)調(diào)試過程。不同的值會(huì)明顯影響到構(gòu)建(build)和重新構(gòu)建(rebuild)的速度。

可以直接使用 SourceMapDevToolPlugin/EvalSourceMapDevToolPlugin 來替代使用 devtool 選項(xiàng),它有更多的選項(xiàng),但是切勿同時(shí)使用 devtool 選項(xiàng)和 SourceMapDevToolPlugin/EvalSourceMapDevToolPlugin 插件。因?yàn)?code>devtool 選項(xiàng)在內(nèi)部添加過這些插件,所以會(huì)應(yīng)用兩次插件。

devtool 構(gòu)建速度 重新構(gòu)建速度 生產(chǎn)環(huán)境 品質(zhì)(quality)
(none) +++ +++ yes 打包后的代碼
eval +++ +++ no 生成后的代碼
cheap-eval-source-map + ++ no 轉(zhuǎn)換過的代碼(僅限行)
cheap-module-eval-source-map o ++ no 原始源代碼(僅限行)
eval-source-map -- + no 原始源代碼
cheap-source-map + o no 轉(zhuǎn)換過的代碼(僅限行)
cheap-module-source-map o - no 原始源代碼(僅限行)
inline-cheap-source-map + o no 轉(zhuǎn)換過的代碼(僅限行)
inline-cheap-module-source-map o - no 原始源代碼(僅限行)
source-map -- -- yes 原始源代碼
inline-source-map -- -- no 原始源代碼
hidden-source-map -- -- yes 原始源代碼
nosources-source-map -- -- yes 無源代碼內(nèi)容

這么多模式用哪個(gè)好?

開發(fā)環(huán)境推薦:

? cheap-module-eval-source-map

生產(chǎn)環(huán)境推薦:

? none(不使用source map)

原因如下:

  1. 使用 cheap 模式可以大幅提高 soure map 生成的效率。大部分情況我們調(diào)試并不關(guān)心列信息,而且就算 source map 沒有列,有些瀏覽器引擎(例如 v8) 也會(huì)給出列信息。
  2. 使用 module 可支持 babel 這種預(yù)編譯工具,映射轉(zhuǎn)換前的代碼
  3. 使用 eval 方式可大幅提高持續(xù)構(gòu)建效率。官方文檔提供的速度對(duì)比表格可以看到 eval 模式的重新構(gòu)建速度都很快。
  4. 使用 eval-source-map 模式可以減少網(wǎng)絡(luò)請(qǐng)求。這種模式開啟 DataUrl 本身包含完整 sourcemap 信息,并不需要像 sourceURL 那樣,瀏覽器需要發(fā)送一個(gè)完整請(qǐng)求去獲取 sourcemap 文件,這會(huì)略微提高點(diǎn)效率。而生產(chǎn)環(huán)境中則不宜用 eval,這樣會(huì)讓文件變得極大。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 我相信看過很多戲劇的軍迷都會(huì)嘔吐一個(gè)問題。為什么里面的主角被毆打如此之多的槍還沒死,他們不僅不能用機(jī)槍射擊敵人,而...
    互聯(lián)網(wǎng)1閱讀 3,323評(píng)論 0 0
  • 現(xiàn)在對(duì)兩種技能感到對(duì)個(gè)人發(fā)展比較重要,一個(gè)是英語能力,另一個(gè)是寫作能力。有這兩種能力的人,相信人生道路會(huì)越走越輕松...
    goldfish2017閱讀 171評(píng)論 0 0
  • 我是大萍,來自財(cái)富高效能52班,班長張瑤小兄弟,這是我的作業(yè)。 我的新知:時(shí)間管理實(shí)際上是時(shí)間管理能力的提升。這項(xiàng)...
    大萍_萍姐閱讀 184評(píng)論 0 0

友情鏈接更多精彩內(nèi)容