設定ファイル
nuxt.config.jsのbuild項目を変更すると調整出来る
analyze
Nuxt.js では webpack-bundle-analyzer を使ってバンドルファイルと最適化の仕方を視覚化できます。
analyze: true
これを入れて、
nuxt build --analyze
実行して、アクセスすると出るようだ。
> nuxt build --analyze
ℹ Production build 22:03:13
✔ Builder initialized 22:03:13
✔ Nuxt files generated 22:03:13
✔ Client
Compiled successfully in 14.28s
✔ Server
Compiled successfully in 1.99s
Hash: 41fdaad9e02f1be6ac33
Version: webpack 4.28.3
Time: 14281ms
Built at: 2019/01/06 22:03:31
Asset Size Chunks Chunk Names
LICENSES 426 bytes [emitted]
app.js 31.5 KiB 0 [emitted] app
commons.app.js 140 KiB 1 [emitted] commons.app
pages/index.js 3.59 KiB 2 [emitted] pages/index
runtime.js 2.14 KiB 3 [emitted] runtime
+ 3 hidden assets
Entrypoint app = runtime.js commons.app.js app.js
Hash: ac3d6bd6601cb14fae1f
Version: webpack 4.28.3
Time: 1996ms
Built at: 2019/01/06 22:03:33
Asset Size Chunks Chunk Names
server-bundle.json 194 KiB [emitted]
Entrypoint app = server-bundle.js

- 実行後に、自動でanaylizeされた画面が表示される。
- これ、格好いいな。
parallel
webpack のビルドでthread-loader を有効にします。
parallel: true,
# before
Hash: b934078456bb6903bb85
Version: webpack 4.28.3
Time: 899ms
Built at: 2019/01/06 22:24:57
Asset Size Chunks Chunk Names
server-bundle.json 197 KiB [emitted]
Entrypoint app = server-bundle.js
# after
Hash: 8d65b0b7468f404d172e
Version: webpack 4.28.3
Time: 1456ms
Built at: 2019/01/06 22:36:17
Asset Size Chunks Chunk Names
server-bundle.json 197 KiB [emitted]
Entrypoint app = server-bundle.js
- 多分ファイルが少ないから逆に重くなっている気がする。
- ファイル数が増えたプロジェクトだと良くなるはずだとは思う