開発しているWebサービス、少し初期表示が遅いので、少しずつ改善中...
Vueの非同期コンポーネントを使うと改善されるよう。
とりあえず置換しただけだけど、赤だったPerformanceが

オレンジになった(´ω`)

こんな感じに書き換える。
import { Component, Vue } from "nuxt-property-decorator";
- import SubComponent from "~/components/SubComponent.vue";
+ const SubComponent = () => import("~/components/SubComponent.vue");
@Component({ components: { SubComponent } })
export default class IndexPage extends Vue {
結構大きくなってきたので、全部手でやるのはめんどくさいので、
sedで一括置換してみたときの備忘録。
一括置換スクリプト
# pages配下にある.vueファイルを取得
files=`find ./pages -type f -name "*.vue"`
for f in $files; do
# 取得したファイルをsedで置換
gsed -i -e "s:^import \([^ ]*\) from \"~/components/\([^ ]*\).vue\":const \1 = () => import(\"~/components/\2.vue\"):g" ${f}
done
以上!!
ページの上部にあるコンポーネントとかは、非同期にすると表示が崩れるので、
必要に応じて、revertしていくと良い感じに(´ω`)
# GNU sed(gsed)のインストール $ brew install gnu-sed