<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      1.正常模式

       

      <script src="index.js"></script>

       

      這種情況下 JS 會阻塞 dom 渲染,瀏覽器必須等待 index.js 加載和執(zhí)行完成后才能去做其它事情

      2.async 模式

      <script async src="index.js"></script>

      async 模式下,它的加載是異步的,JS 不會阻塞 DOM 的渲染,async 加載是無順序的,當(dāng)它加載結(jié)束,JS 會立即執(zhí)行

      使用場景:若該 JS 資源與 DOM 元素沒有依賴關(guān)系,也不會產(chǎn)生其他資源所需要的數(shù)據(jù)時,可以使用async 模式,比如埋點(diǎn)統(tǒng)計

      3.defer 模式

      <script defer src="index.js"></script>

      defer 模式下,JS 的加載也是異步的,defer 資源會在 DOMContentLoaded 執(zhí)行之前,并且 defer 是有順序的加載

      如果有多個設(shè)置了 defer 的 script 標(biāo)簽存在,則會按照引入的前后順序執(zhí)行,即便是后面的 script 資源先返回

      所以 defer 可以用來控制 JS 文件的執(zhí)行順序,比如 element-ui.js 和 vue.js,因為 element-ui.js 依賴于 vue,所以必須先引入 vue.js,再引入 element-ui.js

      <script defer src="vue.js"></script>
      <script defer src="element-ui.js"></script>

      defer 使用場景:一般情況下都可以使用 defer,特別是需要控制資源加載順序時

      4.module 模式

      <script type="module">import { a } from './a.js'</script>

      在主流的現(xiàn)代瀏覽器中,script 標(biāo)簽的屬性可以加上 type="module",瀏覽器會對其內(nèi)部的 import 引用發(fā)起 HTTP 請求,獲取模塊內(nèi)容。這時 script 的行為會像是 defer 一樣,在后臺下載,并且等待 DOM 解析

      Vite 就是利用瀏覽器支持原生的 es module 模塊,開發(fā)時跳過打包的過程,提升編譯效率

      5.preload

      <link rel="preload" as="script" href="index.js">

      link 標(biāo)簽的 preload 屬性:用于提前加載一些需要的依賴,這些資源會優(yōu)先加載

      vue2 項目打包生成的 index.html 文件,會自動給首頁所需要的資源,全部添加 preload,實(shí)現(xiàn)關(guān)鍵資源的提前加preload 特點(diǎn):

      1)preload 加載的資源是在瀏覽器渲染機(jī)制之前進(jìn)行處理的,并且不會阻塞 onload 事件;

      2)preload 加載的 JS 腳本其加載和執(zhí)行的過程是分離的,即 preload 會預(yù)加載相應(yīng)的腳本代碼,待到需要時自行調(diào)用;

      6.prefetch

      <link rel="prefetch" as="script" href="index.js">

      prefetch 是利用瀏覽器的空閑時間,加載頁面將來可能用到的資源的一種機(jī)制;通??梢杂糜诩虞d其他頁面(非首頁)所需要的資源,以便加快后續(xù)頁面的打開速度

       prefetch 特點(diǎn):

      1)pretch 加載的資源可以獲取非當(dāng)前頁面所需要的資源,并且將其放入緩存至少5分鐘(無論資源是否可以緩存)

      2)當(dāng)頁面跳轉(zhuǎn)時,未完成的 prefetch 請求不會被中斷

      加載方式總結(jié)

      async、defer 是 script 標(biāo)簽的專屬屬性,對于網(wǎng)頁中的其他資源,可以通過 link 的 preload、prefetch 屬性來預(yù)加載

      如今現(xiàn)代框架已經(jīng)將 preload、prefetch 添加到打包流程中了,通過靈活的配置,去使用這些預(yù)加載功能,同時我們也可以審時度勢地向 script 標(biāo)簽添加 async、defer 屬性去處理資源,這樣可以顯著提升性能


      作者:海闊_天空
      鏈接:https://juejin.cn/post/7188894691356573754
      來源截取:稀土掘金
      posted on 2023-04-12 11:19  菜鳥成長日記lx  閱讀(1583)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 喀什市| 五月综合婷婷开心综合婷婷| 欧美性群另类交| 日韩精品一区二区三区视频| 亚洲AV国产福利精品在现观看| 婷婷丁香五月亚洲中文字幕| 午夜亚洲AV日韩AV无码大全| 诸城市| 中文字幕久久精品波多野结| 成人国产精品中文字幕| 久久国产精品久久久久久| 少妇久久久被弄到高潮| 国产精品无遮挡一区二区| 亚洲国产成熟视频在线多多| 久久精品日日躁夜夜躁| 国产久爱免费精品视频| 亚洲欧美日韩精品久久亚洲区色播| 在线 欧美 中文 亚洲 精品| 天堂久久天堂av色综合| 这里只有精品在线播放| 精品日韩色国产在线观看| 亚州av第二区国产精品| 疯狂做受xxxx高潮欧美日本| 黑人av无码一区| 网友偷拍视频一区二区三区| 久久精品丝袜高跟鞋| 欧洲人与动牲交α欧美精品| 色综合久久精品亚洲国产| 伊人天天久大香线蕉av色| 精品国产一区av天美传媒| 中文字幕有码无码AV| 午夜毛片精彩毛片| 久久天天躁狠狠躁夜夜网站| 清纯唯美经典一区二区| 美乳丰满人妻无码视频| 国产精品乱一区二区三区| 99精品高清在线播放| 日本中文字幕乱码免费| 亚洲尤码不卡av麻豆| 灵璧县| 狠狠色婷婷久久综合频道日韩|