您好,登錄后才能下訂單哦!
本篇內容主要講解“微型前端的實現方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“微型前端的實現方法”吧!
為了實現這種架構的好處,應盡可能避免意外耦合;這將解鎖微前端模式必須提供的靈活性和可擴展性以及通過允許占用申請部分的升級或將來的完整重寫來替換您的應用程序的未來證明。
每個微前端應該能夠在隔離或容器應用中呈現。所需的數據應由每個微前端加載并避免數據瀑布。
做?:
可以在不影響其他微前端的情況下交換的共享庫。
加載所需的所有數據呈現。
不要?:
在不同的微前端具有集中存儲/共享數據。
共享積極開發的庫。
每個微前端都應具有自己的代碼庫,并且選擇的版本控制不應對項目開發或部署的方式產生任何影響。在單一的單一或單獨的存儲庫下擁有所有項目都很好。
做?:
使用單一代碼倉 monorepos。
使用單個 repos。
每個微型前端都有它自己的CI / CD管道,并且能夠在沒有其他微前端的任何依賴項的情況下部署到生產。應該避免的常見的反模式是“地獄的部署隊列”,其中不同的微前端如此緊密地耦合,它們需要以特定順序部署,以避免打破應用程序。
做?:
具有單獨的CI / CD管道。
按需發布。
不要?:
有發布時間表。
具有允許以前版本的增量/順序部署。
因為需要單獨的微前端以及容器應用程序內部呈現,因此還可以使用單位和整個方案的集成測試測試它們是有意義的。
做?:
為隔離的每個微前端渲染具有單位和集成測試。
在容器應用程序中運行微前端渲染的集成測試作為端到端測試的一部分。
當一個新的微前端被部署到生產時,不應刪除以前的版本,并且應該使用語義版本或類似的版本號標記新版本。由容器應用程序決定要使用(管理)的特定微前端或始終使用最新版本(Evergreen)的特定版本。
做?:
使用語義版本化。
使用特定版本或“最新”。
不要?:
需要全局部署更改版本。
刪除以前的版本。
微前端之間的通信應盡可能最小,簡單,避免盡可能多的全球狀態和框架特定的解決方案。
如果兩個或更多的微前端共享大量消息以提供其最小功能,它們可能太緊密耦合,并且它們可以共享類似的足夠的目的,即它們應該被認為將它們集成到一個中。
做?:
保持信息小而簡單。
如果可能的話,避免有狀態和通信框架。
不要?:
股東。
有不必要的溝通。
來自一個微前端的CSS不應影響其它微前端。
做?:
為您的CSS定義范圍。
使用CSS-IN-JS或命名法庫(如CSS模塊)。
不要?:
使用全局CSS。
做?:
嘗試創建自治團隊。
嘗試安排圍繞業務功能的微前端。
可重用性是一個很好的“副作用”而不是目標。
不要?:
不要強制這種架構風格,因為它是“新”。
您不需要多個JavaScript框架。
您不需要“微前端框架”。
微前端不必是“Micro”。
到此,相信大家對“微型前端的實現方法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。