Iceworks 關(guān)于物料

2021-05-20 20:32 更新

在中后臺(tái)系統(tǒng)開發(fā)中,我們?cè)缫蚜?xí)慣了基于 Fusion、antd 等基礎(chǔ)組件搭建我們的頁面。然而這些基礎(chǔ)組件很難完全滿足我們的業(yè)務(wù)需求,實(shí)際項(xiàng)目開發(fā)中往往包含大量重復(fù)的業(yè)務(wù)場(chǎng)景。這些業(yè)務(wù)場(chǎng)景很多都是大同小異的,有些是有一定業(yè)務(wù)邏輯的組件(員工選擇器、表單等),另一些是由基礎(chǔ)組件和業(yè)務(wù)組件組合成的列表、模塊,還有一些是頁面布局、視覺規(guī)范、項(xiàng)目工程化等。如何復(fù)用這些業(yè)務(wù)場(chǎng)景,降低中后臺(tái)系統(tǒng)開發(fā)的成本呢?ICE 團(tuán)隊(duì)通過與社區(qū)一起共建物料體系,提供海量高質(zhì)量的物料來解決這些問題。

物料即組成一個(gè)前端項(xiàng)目的不同單位,根據(jù)抽象粒度的不同,我們將物料從小到大分為組件(component)、區(qū)塊(block)和模板(scaffold)。在基于物料體系的開發(fā)中,我們使用項(xiàng)目物料來初始化前端工程,提供最佳實(shí)踐,解決工程問題,再使用區(qū)塊和組件像搭積木一樣快速搭建頁面。

概念解釋

物料分為組件(component)、區(qū)塊(block)和項(xiàng)目(scaffold)四種類型:

  • 組件(component):功能比較確定同時(shí)復(fù)雜度較高,例如用戶選擇器、地址選擇器等,項(xiàng)目中只需要引入對(duì)應(yīng)的 npm 包即可,項(xiàng)目不關(guān)心也無法修改組件內(nèi)部的代碼,只能通過組件定義的 props 控制。
  • 區(qū)塊(block):一般是一個(gè) UI 模塊,使用區(qū)塊時(shí)會(huì)將區(qū)塊代碼拷貝到項(xiàng)目代碼中,項(xiàng)目里可以對(duì)區(qū)塊代碼進(jìn)行任何改動(dòng),因此區(qū)塊后續(xù)的升級(jí)也不會(huì)對(duì)項(xiàng)目有任何影響,這是區(qū)塊跟業(yè)務(wù)組件的最大區(qū)別。
  • 項(xiàng)目模板(scaffold):即項(xiàng)目腳手架,用于項(xiàng)目初始化。

物料開發(fā)工具

我們通過 iceworks CLI 這個(gè)工具提供物料的開發(fā)與管理,其本身不耦合任何前端框架或工程體系,這意味著基于 iceworks CLI 可以開發(fā) React/Vue/Angular 等各種前端體系的物料。iceworks CLI 具有以下特性:

  • 支持不同前端框架和工程的物料開發(fā)
  • 支持物料的初始化以及管理能力
  • 支持物料數(shù)據(jù)生成和校驗(yàn)
  • 支持將物料托管到 fusion.desion
  • 支持自定義物料模板能力
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)