1. 程式人生 > >webpack中動態import()打包後的檔名稱定義

webpack中動態import()打包後的檔名稱定義

動態import()打包出來檔案的name是按照0,1,2...依次排列,如0.js1.js等,有的時候我們希望打包出來的檔名是打包前的檔名稱。要實現這,需要經歷3個步驟:
1.在webpack配置檔案中的output中新增chunkFilename。命名規則根據自己的專案來定,其中[name]就是檔名,這一塊更詳細的說明請點選這裡

//其他程式碼...
output: {
    path: path.resolve(__dirname, 'public'),
    filename: '[name].[hash:8].js',
    chunkFilename: '[name].[hash:8].js'
,//動態import檔名 }, //其他程式碼...

2.在動態import()程式碼處添加註釋webpackChunkName告訴webpack打包後的chunk的名稱(註釋中的內容很重要,不能省掉),這裡打包以後的name就是MyFile。

import(/* webpackChunkName: "MyFile" */`../containers/MyFile`)

3.大多數情況下我們使用動態import()是通過迴圈來做的,這樣我們就不得不引入變量了,使用[request]來告訴webpack,這裡的值是根據後面傳入的字串來決定,本例中就是變數pathName的值,具體如下:

import
(/* webpackChunkName: "[request]" */`../containers/${pathName}`)