formily提供后臺復雜數(shù)據(jù)處理的表單設計功能,可以通過這款軟件為后臺管理系統(tǒng)設計表單,可以為數(shù)據(jù)頁面編輯表單,將表單狀態(tài)設置為樣式管理,讓瀏覽表單更加輕松,解決復雜數(shù)據(jù)導致表單頁面出現(xiàn)延遲卡頓無法加載的問題,讓用戶可以輕松管理復雜數(shù)據(jù)處理過程的表單數(shù)據(jù),您可以將formily看做是表單組件和框架,可以在大部分需要表單制作的場景使用,formily主要面向中后臺開發(fā),用戶可以通過這款軟件提升表單能,在處理復雜數(shù)據(jù)聯(lián)動項目的時候快速部署表單,在處部署選項表單場景的時候獲得更方便的表單作方案!
formily軟件功能
在React中,在保守模式下,表單的整樹呈現(xiàn)問題非常明顯。特別是對于數(shù)據(jù)聯(lián)動的場景,很容易導致頁面卡頓,為了解決這個問題,我們將每個表單的狀態(tài)調(diào)整為樣式管理,從而大大提升了表單作能。同時,我們深度整合了ON Schema協(xié)議,可以幫助您快速解決此驅(qū)動表單渲染的問題。
高質(zhì)量,細分分布式渲染,大大減輕React渲染壓力
支持Ant設計/融合Next組件體系
X標簽化寫法/ ON架構數(shù)據(jù)驅(qū)動方案無縫遷移過渡
異常邏輯管理,涵蓋各種復雜聯(lián)動校正邏輯
支持各種表單復雜布局方案
formily軟件特色
Formily 是一個由阿里巴巴集團多 BU 共建的面向中后臺復雜場景的表單解決方案,它也是一個表單框架。
它的前身是供應鏈平臺在 2019 年初對外開源的 UForm 解決方案,UForm 的前身又是在供應鏈平臺內(nèi)部自研的某個表單框架。
總體來看,F(xiàn)ormily 是一個經(jīng)過了漫長時間所磨煉,沉淀出來的表單解決方案。
同時,我們在集團內(nèi)部,也有著最復雜的表單場景一直持續(xù)在著 Formily 的極限。
所以,F(xiàn)ormily 發(fā)展到現(xiàn)在,完全是受業(yè)務而推進的解決方案,這不是一個簡單的前端子!
這是一個真正意義上,為業(yè)務而生的表單解決方案!只要阿里巴巴還有中后臺表單場景,F(xiàn)ormily 就會一直持續(xù)下去
formily使用說明
Formily
Formily 解決方案的本質(zhì)是構造了一個 Observable Form Graph,在這個 Form Graph 中,我們象了整個表單領域模型,同時這個模型又是一個無限循環(huán)狀態(tài)機。
這個狀態(tài)機主要有 3 個特點:
無限循環(huán)
分布式管理狀態(tài)
UI 無關
在這樣一個狀態(tài)機下,我們就能很簡單的來描述字段間的聯(lián)動關系。我們甚至可以用一句極簡表達式來描述:
這句表達式描述了
任何聯(lián)動,都需要一個路徑來描述具體字段
通過一個選擇器來選擇字段,同時任何聯(lián)動都是從表單生命周期而發(fā)起
聯(lián)動的最終作是作具體字段的狀態(tài),可以是值,可以是它的顯示隱藏,也可以是具體組件屬等等。
所以,F(xiàn)ormily 借助這樣一個內(nèi)核,我們輕松的實現(xiàn)了:
在復雜聯(lián)動場景下更加清晰簡單的描述聯(lián)動的方式
在超多表單項場景下可以獲得更好的表單作能
在跨終端場景下實現(xiàn)通用表單解決方案
核心特
在上面有講到,F(xiàn)ormily 的狀態(tài)機模型,當然,F(xiàn)ormily 不止這些,我們在上層又象了幾層
UI 橋接層(React/Vue/Angular/小程序….),這一層主要是對接各種組件化框架,對不同體系的用戶提供更便捷的表單管理方案
Schema 動態(tài)渲染層(React/Vue/Angular/小程序…),這一層主要提供了針對 Schema 場景下的各種上層能力,比如典型的協(xié)議化聯(lián)動,協(xié)議化布局能力
Schema 編輯器層,這一層主要提供了可視化配置 Schema 能力,方便非技術人員快速配置表單
研發(fā)工具層,這一層主要提供了針對 Formily 的開發(fā)者調(diào)試能力
整體架構
從以上架構中,我們可以看到
整個 Formily 是由一個 UI 無關的內(nèi)核所驅(qū)動的,這樣的好處就是,我們的表單方案,是可以輕松做到跨終端的,同時,在上層,我們擁有一份標準的表單協(xié)議,可以做表單動態(tài)渲染,所以,我們可以想象一下,一份 ON Schema 驅(qū)動多端的表單頁面動態(tài)渲染 這樣的目標,是可以輕松實現(xiàn)的,這樣對于整個前端表單研發(fā)領域,是一個突破的解決方案。
數(shù)據(jù)公示
formily未來規(guī)劃
支持更多端,現(xiàn)在主要支持了 React,Rax,未來會考慮支持小程序
支持更多組件體系,比如 Antd Mobile、Mateal Design 等
支持更完備,可實際用在生產(chǎn)環(huán)境中的的 Schema 表單配置器
在集團內(nèi)部落地更多場景