(一)Source Maps

什么是Source Maps

Source Map字面意思就是原始地圖捷绒,當(dāng)開發(fā)環(huán)境中的源代碼經(jīng)過壓縮袄友,去空格担败,babel編譯轉(zhuǎn)化后昔穴,最終可以得到適用于生產(chǎn)環(huán)境的項目代碼,這樣處理后的項目代碼和源代碼之間差異性很大提前,當(dāng)打包出現(xiàn)問題需要我們debug的時候吗货,我們往往都感到很頭疼,因為打包后的文件都是壓縮到一起的狈网,我們很難找到問題所在宙搬,這樣嚴重影響調(diào)試效率。為了我們開發(fā)過程中debug更方便快捷拓哺,我們就要用到Source Maps來定位到開發(fā)中的源代碼勇垛。
Source map就是一個信息文件,里面儲存著位置信息拓售,也就是說窥摄,轉(zhuǎn)換后的代碼的每一個位置,所對應(yīng)的轉(zhuǎn)換前的位置础淤。當(dāng)我們在開發(fā)中出錯的時候,出錯工具將直接顯示原始代碼哨苛,而不是轉(zhuǎn)換后的代碼鸽凶,這樣使得編譯后的代碼可讀性更高,也更方便快捷調(diào)試建峭。
webpack配置中配置source maps時我們需要先配置devtool
devtool配置有四種不同的方法玻侥,具體如下:

devtool配置 描述
source-map 在一個單獨的文件中產(chǎn)生一個完整且功能完全的文件。這個文件具有最好的source map亿蒸,但是它會減慢打包速度
cheap-module-source-map 在一個單獨的文件中生成一個不帶列映射的map凑兰,不帶列映射提高了打包速度,但是也使得瀏覽器開發(fā)者工具只能對應(yīng)到具體的行边锁,不能對應(yīng)到具體的列(符號)姑食,會對調(diào)試造成不便
eval-source-map 使用eval打包源文件模塊,在同一個文件中生成干凈的完整的source map茅坛。這個選項可以在不影響構(gòu)建速度的前提下生成完整的sourcemap音半,但是對打包后輸出的JS文件的執(zhí)行具有性能和安全的隱患。在開發(fā)階段這是一個非常好的選項,在生產(chǎn)階段則一定不要啟用這個選項
cheap-module-eval-source-map 這是在打包文件時最快的生成source map的方法曹鸠,生成的Source Map 會和打包后的JavaScript文件同行顯示煌茬,沒有列映射,和eval-source-map選項具有相似的缺點

注意:cheap-module-eval-source-map方法構(gòu)建速度更快彻桃,但是不利于調(diào)試坛善,推薦在大型項目考慮時間成本時使用。
從以上的四個位置方法來看邻眷,自上而下打包速度越來越快浑吟,但是在打包過程中也出現(xiàn)了各種隱患,這也驗證了一句話:“心急吃不了熱豆腐”耗溜。對于我們現(xiàn)在來說我們就可以用到eval-source-map组力。
本文以webpack文章的demo為例,如果未閱讀上文抖拴,并且想了解完整過程請點擊回到上文
在配置文件webpack.config.js中配置如下代碼

module.exports = {
    ...
    devtool: 'eval-source-map', // 在這里配置devtool
    ...
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末燎字,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子阿宅,更是在濱河造成了極大的恐慌候衍,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件洒放,死亡現(xiàn)場離奇詭異蛉鹿,居然都是意外死亡,警方通過查閱死者的電腦和手機往湿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進店門妖异,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人领追,你說我怎么就攤上這事他膳。” “怎么了绒窑?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵棕孙,是天一觀的道長。 經(jīng)常有香客問我些膨,道長蟀俊,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任订雾,我火速辦了婚禮肢预,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘葬燎。我一直安慰自己误甚,他們只是感情好缚甩,可當(dāng)我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著窑邦,像睡著了一般擅威。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上冈钦,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天郊丛,我揣著相機與錄音,去河邊找鬼瞧筛。 笑死厉熟,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的较幌。 我是一名探鬼主播揍瑟,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼乍炉!你這毒婦竟也來了绢片?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤岛琼,失蹤者是張志新(化名)和其女友劉穎底循,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體槐瑞,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡熙涤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了困檩。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片祠挫。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖窗看,靈堂內(nèi)的尸體忽然破棺而出茸歧,到底是詐尸還是另有隱情,我是刑警寧澤显沈,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站逢唤,受9級特大地震影響拉讯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鳖藕,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一邑飒、第九天 我趴在偏房一處隱蔽的房頂上張望蝗柔。 院中可真熱鬧,春花似錦待榔、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至纵顾,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間栋盹,已是汗流浹背施逾。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留例获,地道東北人汉额。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像榨汤,于是被迫代替她去往敵國和親蠕搜。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,507評論 2 359