日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
你需要了解的幾種微前端解決方案

 文章將講述業(yè)界各大知名IT企業(yè)使用的微前端解決方案,以及其帶來的利弊之處,因?yàn)槟切┍锥耍沟梦覀儓F(tuán)隊(duì)自己探究了一套目前認(rèn)為最好的微前端解決方案。通過本文,可以快速幫您理清楚微前端方案的利弊,從而做出有利于您團(tuán)隊(duì)的更好更明智的選擇。

成都創(chuàng)新互聯(lián)公司主要從事做網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)海城,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

一、寫在前面

在之前的文章中,我們已經(jīng)深入剖析了 微前端究竟是什么,可以帶來什么收益 ,現(xiàn)在讓我們復(fù)習(xí)一下微前端的概念:

 
 
 
  1. Techniques, strategies and recipes for building a modern web app with multiple teams that can ship features independently. 

中文釋義:

可以由多個(gè)團(tuán)隊(duì)獨(dú)立開發(fā)的現(xiàn)代web應(yīng)用程序的技術(shù)、策略和方案。

本文則是在此基礎(chǔ)上對(duì)現(xiàn)有的微前端解決方案進(jìn)行對(duì)比總結(jié),廢話少說,讓我們開始今天的課題。

二、現(xiàn)有微前端解決方案

查找了大量的資料后,我總結(jié)了以下主流的能夠真正實(shí)現(xiàn)微前端概念的解決方案,如有遺漏,歡迎小伙伴們補(bǔ)充~

1、iframe

眾所周知, iframe 是 html 提供的標(biāo)簽, 能加載其他web應(yīng)用的內(nèi)容 ,并且它能兼容所有的瀏覽器,因此,你可以用它來 加載任何你想要加載的web應(yīng)用 。

iframe最大的特性就是提供了瀏覽器原生的硬隔離方案,不論是樣式隔離、js 隔離這類問題統(tǒng)統(tǒng)都能被完美解決。讀到這時(shí),相信小伙伴們跟我一樣,覺得iframe與微前端概念中提到的 獨(dú)立開發(fā) 、 獨(dú)立維護(hù) 、 相互隔離 非常的吻合,有種直接上ifame就完事兒了的想法,但為何它到現(xiàn)在也不是微前端主要的實(shí)現(xiàn)方式呢,后來有幸拜讀了 qiankun技術(shù)圓桌 中一篇關(guān)于微前端 Why Not Iframe 的思考,總結(jié)的很到位,現(xiàn)復(fù)述其中的一段描述

iframe雖然基本能做到微前端所要做的所有事情,但它的最大問題也在于他的隔離性無法被突破,導(dǎo)致應(yīng)用間上下文無法被共享,隨之帶來開發(fā)體驗(yàn)、產(chǎn)品體驗(yàn)的問題。

以下是我對(duì)該文中總結(jié)部分的總結(jié):

  • 不是單頁應(yīng)用,會(huì)導(dǎo)致瀏覽器刷新 iframe url 狀態(tài)丟失、后退前進(jìn)按鈕無法使用。

  • 彈框類的功能無法應(yīng)用到整個(gè)大應(yīng)用中,只能在對(duì)應(yīng)的窗口內(nèi)展示。

  • 由于可能應(yīng)用間不是在相同的域內(nèi),主應(yīng)用的 cookie 要透?jìng)鞯礁蛎疾煌淖討?yīng)用中才能實(shí)現(xiàn) 免登錄 效果。

  • 每次子應(yīng)用進(jìn)入都是一次瀏覽器上下文重建、資源重新加載的過程,占用大量資源的同時(shí)也在極大地消耗資源。

  • iframe的特性導(dǎo)致搜索引擎無法獲取到其中的內(nèi)容,進(jìn)而無法實(shí)現(xiàn)應(yīng)用的 seo

我猜,以上原因便是 iframe 沒能作為官方微前端方案的原因吧。

2、Web Components

或許很多小伙伴對(duì) Web Components 不是很了解,它是由 google 推出的瀏覽器的原生組件, MDN 對(duì) Web Components 的定義是這樣的:

作為開發(fā)者,我們都知道盡可能多的重用代碼是一個(gè)好主意。這對(duì)于自定義標(biāo)記結(jié)構(gòu)來說通常不是那么容易 — 想想復(fù)雜的HTML(以及相關(guān)的樣式和腳本),有時(shí)您不得不寫代碼來呈現(xiàn)自定義UI控件,并且如果您不小心的話,多次使用它們會(huì)使您的頁面變得一團(tuán)糟。

Web Components旨在解決這些問題 — 它由三項(xiàng)主要技術(shù)組成,它們可以一起使用來創(chuàng)建封裝功能的定制元素,可以在你喜歡的任何地方重用,不必?fù)?dān)心代碼沖突。

它的 三項(xiàng)主要技術(shù) 是指:

  • Custom elements(自定義元素):一組JavaScript API,允許您定義custom elements及其行為,然后可以在您的用戶界面中按照需要使用它們。

  • Shadow DOM(影子DOM):一組JavaScript API,用于將封裝的“影子”DOM樹附加到元素(與主文檔DOM分開呈現(xiàn))并控制其關(guān)聯(lián)的功能。通過這種方式,您可以保持元素的功能私有,這樣它們就可以被腳本化和樣式化,而不用擔(dān)心與文檔的其他部分發(fā)生沖突。

  • HTML templates(HTML模板):