๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Vue.js

[Vue.js] chunk-venders.js ์šฉ๋Ÿ‰ ์ค„์ด๊ธฐ ๋ฐ ์†๋„ ๊ฐœ์„ 

by Jo__y 2023. 5. 18.

Vue.js ๋กœ ๊ฐœ๋ฐœ ํ›„ ์šด์˜ ์ค‘์ธ ์‚ฌ์ดํŠธ์— ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒผ๋‹ค.

Vue.js ๋Š” ์ฒ˜์Œ์— ๋ชจ๋“  ๋ฆฌ์†Œ์Šค๋ฅผ ํ•œ๋ฒˆ์— ๋ฐ›์•„์˜ค๋Š”๊ฒŒ ๋ฌธ์ œ์˜€๋‹ค. ๊ทธ ๋ชจ๋“  ๊ฒƒ์ด ์••์ถ•๋œ ํŒŒ์ผ์ธ

chunk-vendors.js ํŒŒ์ผ์˜ ํฌ๊ธฐ๊ฐ€ ์ž‘์„๋•Œ๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์ง€๋งŒ, ์–ด๋Š์ƒˆ 12.3MB ๊นŒ์ง€ ๋ถˆ์–ด๋‚œ ํƒ“์—

์ธํ„ฐ๋„ท ์†๋„๊ฐ€ ๋Š๋ฆฐ ๋‚˜๋ผ์—์„œ๋Š” ์ฒ˜์Œ์— ํ™”๋ฉด์„ ๋ถˆ๋Ÿฌ์˜ค๋Š”๋ฐ ๋„ˆ๋ฌด ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฐ๋‹ค๊ณ  ํ•œ๋‹ค.

์ฒ˜์Œ์—๋Š” lazy-loading ์œผ๋กœ ์ปดํฌ๋„ŒํŠธ ๋‹จ์œ„๋กœ ๋ถ„๋ฆฌ๋ฅผ ์‹œ์ผœ๋ณด์•˜์ง€๋งŒ,

์ฐจ์ด๊ฐ€ ๋ฏธ๋ฏธ ํ–ˆ๋‹ค.

์ด ๋ฐ–์—๋„ ์ด๋ฏธ์ง€ ์‚ฌ์ด์ฆˆ ์ค„์ด๊ธฐ ๋“ฑ ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์ด ์žˆ์ง€๋งŒ

๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด chunk-vendors.js ์„ ์ผ์ •ํ•œ ํฌ๊ธฐ๋กœ ์ชผ๊ฐœ๋Š” ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜๋‹ค.

// vue.config.js ํŒŒ์ผ
 configureWebpack:{
    mode: 'development',
    devtool: false,
    optimization: {
      splitChunks: {
        chunks: 'all',
        minSize: 15000,
        maxSize: 250000,
        maxAsyncRequests: 30,
        maxInitialRequests: 30,
        enforceSizeThreshold: 50000,
      },
    },
  }

์ด ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ ํ›„ npm run serve ๋กœ ์žฌ์‹œ์ž‘ ํ•˜๋ฉด

chunk-vendors.js ๊ฐ€ ํ•˜๋‚˜์˜ ํฐ ํŒŒ์ผ์—์„œ ๋งŽ์€ ์ž‘์€ ํŒŒ์ผ๋กœ ์ชผ๊ฐœ์ง„ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
์‹ค์ œ๋กœ ๋กœ๋”ฉ ์†๋„ ๊ฐœ์„ ์— ๋„์›€์ด ๋˜๋Š”์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด์•ผ๊ฒ ๋‹ค.

์ฐธ์กฐ
Slash Your Load Times: Shrink the Chunk-Vendors.js Size in Vue3
[webpack4] splitChunksPlugin ์˜ต์…˜ ํŒŒํ—ค์น˜๊ธฐ

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€