由于 Vue 的流行程度越來越高,Vue 的開發(fā)者們也越來越多,所以對于初學(xué)者來說,熟悉 Vue 的框架結(jié)構(gòu)和文件格式尤為重要。其中,Vue 的 Map 文件也是必須要了解的一部分。
Vue 的 Map 文件是用于調(diào)試過程中的輔助文件,該文件主要包括了編譯后的代碼在瀏覽器中的行數(shù)、列數(shù)和源代碼的位置信息等內(nèi)容。而開發(fā)人員則可以通過 Map 文件來方便地在 Chrome 中設(shè)置斷點(diǎn)進(jìn)行調(diào)試。
下面就來詳細(xì)介紹一下 Vue 的 Map 文件解析。
首先,我們可以查看 Vue 的 webpack 配置文件,其中的 devtool 屬性值設(shè)置成了 'source-map'。這意味著 webpack 會生成一個單獨(dú)的 'xxx.common.js.map' 文件,用來映射編譯打包后的 JS 代碼與源代碼之間的關(guān)系。同時,在 Vue-cli 的 devServer.config.js 中也可以看到相關(guān)的配置。
在運(yùn)行 Vue 項(xiàng)目時,我們啟動了 webpack-dev-server ,如果在瀏覽器中開啟開發(fā)者工具(F12),就可以在 Sources 中找到 .vue 文件和編譯后的 JS 文件。同時,我們還可以在 webpack.config.js 中看到 output 配置項(xiàng),其中的 filename 配置項(xiàng)設(shè)置了輸出的文件名。當(dāng)我們在瀏覽器中打開該文件時,就可以直接看到編譯后的 JS 代碼。
如果我們希望在瀏覽器中進(jìn)行調(diào)試,則可以在 Sources 中打開編譯后的 JS 文件,然后通過 Sources 上方的 Toggle Source Map 開關(guān)打開 Map 文件。這樣,我們就可以在源代碼中手動設(shè)置斷點(diǎn)、單步調(diào)試等操作。同時,Map 文件也提供了對應(yīng)編譯后代碼行數(shù)、列數(shù)以及路徑的信息,使我們可以更加方便地進(jìn)行調(diào)試。
除此之外,在 Vue 中使用 TypeScript 的項(xiàng)目中,還需要在 tsconfig.json 文件中配置 sourceMap 選項(xiàng)。這樣,Vue 會自動為編譯出的 JS 代碼生成對應(yīng)的 Map 文件。
總的來說,Vue 的 Map 文件提供了一種方便的調(diào)試方式,使得我們可以快速地定位代碼中的問題。同時,在 Vue 開發(fā)時也需要對 Map 文件進(jìn)行一定的理解和掌握。
上一篇vue 私有方法