webpack 劃重點(diǎn),webpack

    背景

    最近開始有精力比較細(xì)致的研究 webpack,暫時(shí)沒有能力產(chǎn)出整篇的干貨,本文用于記錄在學(xué)習(xí)的過程中對(duì)于一些易混淆或者文檔不清晰的地方所做的一些研究性探索。愛掏網(wǎng) - it200.com如果錯(cuò)誤,請(qǐng)斧正。愛掏網(wǎng) - it200.com

    01.context問題

    首先工程目錄是這樣的

    94dd9ccaf45a1210df49bd0c0f272fb350ff8298

    其中 webpack 配置文件中,入口文件路徑是這樣的,如下所示:


    devtool: 'eval-source-map',
    // 入口
    entry: {
      main: './examples/main',
      vendors: ['vue', 'vue-router']
    },

    看到這里,自己感覺比較疑惑了,入口文件是相對(duì)路徑./examples/main,相對(duì)于當(dāng)前路徑查找,但是當(dāng)前路徑是build目錄啊,肯定不對(duì),但是,運(yùn)行 webpack 打包命令的時(shí)候,又沒有報(bào)錯(cuò),說明配置文件其實(shí)沒配置錯(cuò)誤,那到底是哪里有理解上的漏洞呢。愛掏網(wǎng) - it200.com愛掏網(wǎng) - it200.com愛掏網(wǎng) - it200.com

    查看 webpack 官方文檔,發(fā)現(xiàn) entry 入口的路徑是相對(duì)于 context 配置的路徑的,也就是說,webpack 查找入口文件的時(shí)候,是從 context 規(guī)定的目錄開始查找的,并不是從根目錄開始。愛掏網(wǎng) - it200.com

    那么問題來(lái)了啊,我們這個(gè)配置文件壓根沒有配置 context,那么必然取得是 context 的默認(rèn)配置,接著研究文檔,在官方文檔的說明里面說 context 的默認(rèn)目錄是當(dāng)前目錄,配置表里的默認(rèn)取值是這種:



      context: __dirname, // string(絕對(duì)路徑!)
      // webpack 的主目錄
      // entry 和 module.rules.loader 選項(xiàng)
      // 相對(duì)于此目錄解析

    在這里有個(gè)問題,取值__dirname真的可以嗎,于是,在webpack配置文件里面加入了一行代碼 console.log(__dirname); 然后運(yùn)行 webpack --config webpack.dev.config.js,輸出結(jié)果為:/workspace/soyo/build,這樣肯定是不對(duì)的,相對(duì)于這個(gè)目錄肯定找不到入口文件,但是現(xiàn)在 webpack 運(yùn)行正常,說明context 的默認(rèn)取值肯定不是 ——dirname,正常的值應(yīng)該為 /workspace/soyo/愛掏網(wǎng) - it200.com

    然后開始找各種資料,發(fā)現(xiàn)對(duì) context 的講解真是乏善可陳,于是查找 node 文檔,查找能取值正確路徑的方法,發(fā)現(xiàn)了process.cwd(),這個(gè)方法取得是構(gòu)建命令運(yùn)行時(shí)的目錄的路徑,應(yīng)該跟 package.json同目錄,到這一步應(yīng)該就搞清楚了,但是webpack內(nèi)部解析的context 默認(rèn)值具體是不是這個(gè),無(wú)從知曉,但是__dirname應(yīng)該不太行。愛掏網(wǎng) - it200.com



    原文發(fā)布時(shí)間為:2024年06月25日
    原文作者:鐵錘 本文來(lái)源:?掘金?如需轉(zhuǎn)載請(qǐng)聯(lián)系原作者
    聲明:所有內(nèi)容來(lái)自互聯(lián)網(wǎng)搜索結(jié)果,不保證100%準(zhǔn)確性,僅供參考。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進(jìn)行處理。
    發(fā)表評(píng)論
    更多 網(wǎng)友評(píng)論0 條評(píng)論)
    暫無(wú)評(píng)論

    返回頂部

    主站蜘蛛池模板: 国模大胆一区二区三区| 国产乱码精品一区二区三区| 亚洲AV成人一区二区三区观看| 国产乱码精品一区三上| 亚洲av乱码一区二区三区| av在线亚洲欧洲日产一区二区| 亚洲AV无码一区二区一二区| 91秒拍国产福利一区| 中文字幕精品亚洲无线码一区| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 中文字幕一区日韩精品| 日韩一区二区久久久久久| 国产精品视频一区二区三区不卡| 国产伦精品一区二区三区不卡| 人妻无码久久一区二区三区免费| 亚洲日本一区二区三区| 精品一区二区三区视频在线观看| 精品日韩亚洲AV无码一区二区三区 | 亚洲天堂一区二区| 中文字幕不卡一区| 韩日午夜在线资源一区二区 | 久久精品一区二区免费看| 一区二区三区伦理高清| 亚洲性日韩精品一区二区三区| 国产一区二区三区在线电影| 精品一区二区三区视频| 一区二区三区四区精品| 国产情侣一区二区三区| 国产内射在线激情一区| 日韩一区二区电影| 在线精品一区二区三区| 国产成人一区二区三区| 日韩精品一区二区三区中文字幕| 日本精品一区二区三区四区| 青娱乐国产官网极品一区| 国精品无码一区二区三区在线蜜臀| 中文字幕日韩人妻不卡一区| 日韩免费无码一区二区三区 | 亚洲日本一区二区三区在线不卡| 国产成人高清亚洲一区91| 国产成人高清亚洲一区91|