1. ルートの遅延読み込みを使用する理由
顧客により良いカスタマー エクスペリエンスを提供するために、最初の画面コンポーネントの読み込みが速くなり、白い画面の問題が解決されます。
遅延読み込みでは、ページを分割して必要なときにページを読み込むことができるため、ホームページへの読み込み圧力を効果的に共有し、ホームページの読み込み時間を短縮できます。
2. 定義
遅延ロードは単に遅延ロードまたはオンデマンド ロード、つまり必要なときにロードすることです。
3、使用する
一般的に使用される遅延読み込み方法には、vue 非同期コンポーネントを使用する方法と ES でインポートする方法の 2 つがあります。
1. 遅延ロードを使用しない場合、vue のルーティング コードは次のようになります。
import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'
Vue.use(Router)
export default new Router({
routes: [
{
path: '/',
name: 'HelloWorld',
component:HelloWorld
}
]
})
2. Vue の非同期コンポーネントは遅延読み込みを実装します
メソッドは次のとおりです。component:solve=>(require(['ロードする必要があるルートのアドレス']),solve)
import Vue from 'vue'
import Router from 'vue-router'
/* 此处省去之前导入的HelloWorld模块 */
Vue.use(Router)
export default new Router({
routes: [
{
path: '/',
name: 'HelloWorld',
component: resolve=>(require(["@/components/HelloWorld"],resolve))
}
]
})
3. ES が提案するインポート方法( ------最も一般的に使用される ------)
メソッドは次のとおりです: const HelloWorld = () =>import('ロードする必要があるモジュールのアドレス')
({ }なしは直接リターンを意味します)
import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
const HelloWorld = ()=>import("@/components/HelloWorld")
export default new Router({
routes: [
{
path: '/',
name: 'HelloWorld',
component:HelloWorld
}
]
})
4.コンポーネントの遅延ロード
ルートの遅延読み込みと同じですが、
1. オリジナルコンポーネントでの記述方法
<template>
<div class="hello">
<One-com></One-com>
1111
</div>
</template>
<script>
import One from './one'
export default {
components:{
"One-com":One
},
data () {
return {
msg: 'Welcome to Your Vue.js App'
}
}
}
</script>
2.constメソッド
<template>
<div class="hello">
<One-com></One-com>
1111
</div>
</template>
<script>
const One = ()=>import("./one");
export default {
components:{
"One-com":One
},
data () {
return {
msg: 'Welcome to Your Vue.js App'
}
}
}
</script>
3. 非同期メソッド
<template>
<div class="hello">
<One-com></One-com>
1111
</div>
</template>
<script>
export default {
components:{
"One-com":resolve=>require(['./one'],resolve)
},
data () {
return {
msg: 'Welcome to Your Vue.js App'
}
}
}
</script>