博客 / 詳情

返回

微前端選擇qiankun還是iframe?

前言

微前端是什麼?微前端是一種架構模式,將整個應用拆分成多個獨立的模塊,這些模塊可以獨立開發、部署。我在業務中遇到的2次都是先開發了多個小項目,然後這些小項目在業務上有一定的聯繫,都屬於同一類,產品就希望可以聚合成一個大項目,有一個統一的入口。

技術選型

技術選型大概有2種,一種是使用框架,比如qiankun、無界等,一種是使用iframe引入子項目。那如何選擇適合自己項目的方案呢?這2種我都用過,使用之後的感受總的來説就是,優先考慮iframe,如果iframe滿足不了或滿足起來比較麻煩那就使用框架。

iframe的缺點:

  1. iframe性能消耗大,過多iframe會造成頁面卡頓;
  2. 子應用切換需要重新加載資源,慢;
  3. 主子頁面通信困難;
  4. cookie無法跨域攜帶,子應用想使用主應用的登錄信息麻煩;
  5. 瀏覽器刷新,單頁應用中url回到首頁;

缺點1,把子應用動態加載,每次只加載一個子應用。
缺點2,不在乎切換子應用會重新加載。
缺點3,需要通信的數據只有token,存放在cookie中,主子應用共享。權限判斷在主應用中實現。
缺點4,同3。
缺點5,記錄下url,刷新頁面時先加載這個url對應的子應用;

總結

綜上所述,如果iframe的缺點無傷大雅那就使用iframe,否則使用框架。

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.