微前端開發常見問題匯總,前端應用可以獨立運行、獨立開發、獨立部署。微前端不是單純的前端框架或者工具而是一套架構體系。其在開發中會有各種問題,今天小編整理了一下分享給大家!
1、微前端只是Web端
為什么只是Web?到目前為止我們接觸到的主要是Web,但其概念和想法可以應用于任何類型的應用程序(移動應用、客戶端應用……甚至是CLI工具)微前端只是“插件架構”的一個花哨叫法。不過,插件接口如何設計,以及運行使用插件的應用程序需要具備什么條件就是另外一回事了。 如圖一個非常通用的插件架構(來源:OmarElgabry)
該架構并沒有在哪里運行的概念。既可以在手機上運行,也能在Windows上運行,甚至還能在服務器上運行。
2、微前端需要大型團隊
如果解決方案超級復雜,那么我肯定會找一個簡單的。有些問題需要復雜的解決方案,但好的解決方案通常是簡單的。 根據場景的不同,甚至可能不需要一個分布式團隊。擁有分布式團隊是采用微前端的首要原因之一,但不是唯一原因。另一個很好的理由是特性的粒度。
如果從業務的角度來看微前端,那么你就會發現,擁有啟用和關閉特定特性的能力是很有意義的。針對不同的市場,使用不同的微前端。回到一個簡單的權限模式,這是有意義的。不需要編寫代碼來根據特定條件打開或關閉某些東西。所有這些都留給公共層,可以根據(可能是動態的)條件激活或停用。
不能或不應該使用的代碼也不會被交付。雖然這不應該是一個保護層,但肯定是一個便捷和性能層。用戶不會感到困惑,因為他們看到的是他們能做的。他們看不到沒有交付的功能,所以沒有字節浪費在不可用的代碼上。
3、微前端無法調試
對于任何類型的實現(或供討論的底層架構),開發經驗都可能遭到削弱。應對這種情況的唯一方法是開發人員優先。實現中的第一原則應該是:使調試和開發成為可能。采用標準的工具。有些微前端框架根本不接受這一點。有些需要在線連接、專用環境、多重服務等,這不應該是標準也絕不是常態。
4、微服務需要微前端(或反過來)
解耦的模塊化后端可能為解耦前端打下了一個很好的基礎,但通常情況下,情況并非如此。后端單體,前端模塊化,也是完全可行的,例如,為簡化個性化可能就要結合授權、權限和市場。 同樣,微服務后端并不能證明適合將類似的模式應用于前端。許多微服務后端都是由單用途的應用程序操作的,們的功能沒有增加,只是外觀發生了改變。
5、微前端需要單存儲庫
要創建一個微前端解決方案,就需要利用單存儲庫,最好使用像Lerna這樣的工具。我不認可這一點。當然,單存儲庫有一些優點,但也有明顯的缺點。雖然有一些微前端框架需要聯合CI/CD構建,但大多數都不需要。聯合CI/CD構建通常會導致單存儲庫,因為其設置要簡單得多。但對我來說,這是單體重新打包。如果你在單存儲庫上進行聯合構建,那么你就失去了讓微前端富有吸引力的兩個非常重要的優點獨立部署和獨立開發
如果你看到微前端解決方案需要單存儲庫:那樣做就行。一個精心設計的單體系統可能會更好,不會有分布式系統的所有問題。
以上就是關于微前端開發常見問題和誤區的介紹希望能幫到您。
責編AJX
-
服務器
+關注
關注
12文章
9160瀏覽量
85421 -
前端
+關注
關注
1文章
192瀏覽量
17752 -
應用程序
+關注
關注
37文章
3268瀏覽量
57705
發布評論請先 登錄
相關推薦
評論