久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      vue中什么是按需加載

      在vue中,按需加載又稱延遲加載或者懶加載,就是根據(jù)需要去加載資源;vue項(xiàng)目實(shí)現(xiàn)按需加載有3種方式:vue異步組件技術(shù)、es提案的import()、webpack提供的“require.ensure()”。

      vue中什么是按需加載

      本教程操作環(huán)境:windows7系統(tǒng)、vue2.9.6版,DELL G3電腦。

      按需加載,又稱延遲加載或者懶加載,就是根據(jù)需要去加載資源,只有在使用到的時候才會加載進(jìn)來。

      為什么需要按需加載

      隨著互聯(lián)網(wǎng)的發(fā)展,一個網(wǎng)頁需要承載的功能越來越多。 對于采用單頁應(yīng)用作為前端架構(gòu)的網(wǎng)站來說,會面臨著一個網(wǎng)頁需要加載的代碼量很大的問題,因?yàn)樵S多功能都集中的做到了一個 HTML 里。 這會導(dǎo)致網(wǎng)頁加載緩慢、交互卡頓,用戶體驗(yàn)將非常糟糕。

      導(dǎo)致這個問題的根本原因在于一次性的加載所有功能對應(yīng)的代碼,但其實(shí)用戶每一階段只可能使用其中一部分功能。 所以解決以上問題的方法就是用戶當(dāng)前需要用什么功能就只加載這個功能對應(yīng)的代碼,也就是所謂的按需加載。

      vue項(xiàng)目實(shí)現(xiàn)按需加載的方法

      vue項(xiàng)目實(shí)現(xiàn)按需加載的3種方式:vue異步組件技術(shù)、es提案的import()、webpack提供的require.ensure()

      vue異步組件技術(shù)

      vue-router配置路由,使用vue的異步組件技術(shù),可以實(shí)現(xiàn)按需加載。這種方式下一個組件生成一個js文件

      用例:

      {     path: '/promisedemo',     name: 'PromiseDemo',     component: resolve => require(['../components/PromiseDemo'], resolve) }

      es提案的import() (推薦)

      webpack官方文檔:webpack中使用import()

      vue官方文檔:路由懶加載(使用import())

      用例:

      // 下面2行代碼,沒有指定webpackChunkName,每個組件打包成一個js文件。 const ImportFuncDemo1 = () => import('../components/ImportFuncDemo1') const ImportFuncDemo2 = () => import('../components/ImportFuncDemo2')  // 下面2行代碼,指定了相同的webpackChunkName,會合并打包成一個js文件。 // const ImportFuncDemo = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo') // const ImportFuncDemo2 = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo2') export default new Router({     routes: [         {             path: '/importfuncdemo1',             name: 'ImportFuncDemo1',             component: ImportFuncDemo1         },         {             path: '/importfuncdemo2',             name: 'ImportFuncDemo2',             component: ImportFuncDemo2         }     ] })

      webpack提供的require.ensure()

      vue-router配置路由,使用webpack的require.ensure技術(shù),也可以實(shí)現(xiàn)按需加載。

      這種情況下,多個路由指定相同的chunkName,會合并打包成一個js文件。

      舉例如下:

      {     path: '/promisedemo',     name: 'PromiseDemo',     component: resolve => require.ensure([], () => resolve(require('../components/PromiseDemo')), 'demo') }, {     path: '/hello',     name: 'Hello',     // component: Hello     component: resolve => require.ensure([], () => resolve(require('../components/Hello')), 'demo') }

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號