偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

頁面可視化搭建工具的前生今世

大數(shù)據(jù) 數(shù)據(jù)可視化
頁面可視化搭建, 是一個歷久彌新的話題. 更廣義上講, 頁面是 GUI 的一部分, GUI 的拖拉生成在各種開發(fā)工具上很常見, 如 Android Studio, Xcode, Visual Studio 等. 前端頁面早在十幾年前就能用 Dreamweaver, Frontpage 等工具可視化搭建出來.

背景

引子

頁面可視化搭建, 是一個歷久彌新的話題. 更廣義上講, 頁面是 GUI 的一部分, GUI 的拖拉生成在各種開發(fā)工具上很常見, 如 Android Studio, Xcode, Visual Studio 等. 前端頁面早在十幾年前就能用 Dreamweaver, Frontpage 等工具可視化搭建出來.

但是現(xiàn)在已經(jīng)很少人使用 Dreamweaver 了, 其主要原因是頁面承載的內(nèi)容已經(jīng)和頁面源碼分離, 由后端接口返回再渲染到頁面, 靜態(tài)頁面網(wǎng)站無法承載大量的動態(tài)內(nèi)容.

Dreamweaver 死了, 但是頁面可視化搭建工具依然廣泛需要和使用, 所以這個話題依然值得探討.

[[231153]]

Dreamweaver 操作頁面示例:

文章內(nèi)容

  • 頁面構(gòu)成和頁面組件化.
  • 頁面可視化搭建工具的必要性.
  • 頁面可視化搭建工具的區(qū)分維度.
  • 業(yè)界的實踐實例.

頁面

頁面是 HTML / DOM

頁面可視化搭建的操作對象是頁面. 頁面是一份 HTML 文檔, 不管是靜態(tài)頁面還是動態(tài)渲染出來的頁面, 在頁面上看到的內(nèi)容, 都是 HTML 文檔的一部分.

對 HTML 文檔的實例化和操作, 通過文檔對象模型(DOM)來實現(xiàn), 也可以說頁面是一個 DOM. 本文沒有嚴(yán)格區(qū)分 HTML 和 DOM 這兩個概念, 以下行文都用 HTML 這個概念.

HTML 使用一種樹形結(jié)構(gòu)來表示頁面, 樹的每個節(jié)點為一個頁面元素或文本節(jié)點, 一個頁面元素可以包含多個頁面元素節(jié)點或文本節(jié)點. 頁面元素通常稱為標(biāo)簽, 頁面元素類型由 HTML 規(guī)范定義.

HTML 結(jié)構(gòu)示例:

https://www.w3schools.com/js/js_htmldom.asp

頁面是 HTMLTree + Data

從前端開發(fā)的角度, 可以認(rèn)為頁面是由 HTMLTree 和 Data 組成, HTMLTree 是頁面元素的樹形結(jié)構(gòu), Data 是頁面元素的屬性或文本節(jié)點. 下圖中藍(lán)色框所示的節(jié)點可以認(rèn)為是數(shù)據(jù).

為什么從前端開發(fā)角度會說頁面是 HTMLTree + Data? 舉一個常見場景來說明: 在開發(fā)新頁面時, 我們是可以復(fù)制已有頁面(好吧, 我就是這樣的前端工程師), 然后只修改頁面 HTML, 或者只修改數(shù)據(jù), 或同時修改 HTML 和數(shù)據(jù), 從而完成新頁面的開發(fā).

靜態(tài)頁面和動態(tài)邏輯頁面

上一節(jié)說頁面的由 HTMLTree 和 Data 組成, 討論的是靜態(tài)頁面.

瀏覽器請求靜態(tài)頁面, 網(wǎng)絡(luò)返回的 HTML 源碼就是頁面渲染完成后的 HTML. 靜態(tài)頁面的源碼和頁面渲染結(jié)果一致:

當(dāng)下, 前端頁面更多的是有動態(tài)邏輯的頁面, 在頁面中引入和使用動態(tài)腳本(Javascript)對頁面進(jìn)行修改和控制.

瀏覽器請求動態(tài)邏輯頁面, 網(wǎng)絡(luò)返回的 HTML 源碼與頁面渲染完成后的 HTML 有差異. 動態(tài)邏輯頁面的源碼和渲染結(jié)果有差異:

頁面組件化

頁面渲染后是一棵 HTML 元素構(gòu)成的樹, 頁面的可編輯粒度為 HTML 規(guī)范定義的 HTML 元素.

使用 Web Components 組合 HTML 元素, 實現(xiàn)了功能封裝和可復(fù)用的頁面組件. 在流行的前端框架中, 都提供了組件化的功能, 從前端框架的視角看, 頁面是由組件樹組成. 這些組件內(nèi)部維護(hù)自身的 HTML 元素結(jié)構(gòu)、樣式和功能邏輯, 并通過組件的 props 獲取外部傳入的數(shù)據(jù), 實現(xiàn)了功能封裝和復(fù)用.

Vue 組件樹示例:

https://vuejs.org/v2/guide/#Composing-with-Components

并沒有討論 CSS

在以上的章節(jié)中, 我們并沒有討論決定頁面樣式的 CSS. 因為借助 Javascript 的動態(tài)邏輯, CSS 可以歸入到 Data 的范圍: 通過對頁面元素 style attribute 的修改, 或?qū)?CSS 屬性動態(tài)添加到 <style> 標(biāo)簽中, 可以實現(xiàn)對頁面元素樣式的修改.

頁面可視化搭建

有了對頁面組成的認(rèn)知基礎(chǔ), 可以對頁面可視化搭建有更多的討論: 頁面可視化搭建是什么? 為什么需要?

是什么

如前文所闡述, 動態(tài)邏輯頁面分解為 HTMLTree, Data 和 DynamicLogic. 前端開發(fā)工程師開發(fā)前端頁面的過程, 本質(zhì)上是用編程工具(IDE)對頁面的 HTMLTree, Data 和 DynamicLogic 進(jìn)行增刪和修改.

頁面可視化搭建, 是用可視化交互的方式對頁面的 HTMLTree, Data 和 DynamicLogic 進(jìn)行增刪和修改, 從而實現(xiàn)頁面的生成. 頁面可視化搭建工具是實現(xiàn)頁面可視化編輯的軟件工具.

用頁面可視化搭建工具來搭建頁面與前端工程師在頁面上搬磚, 都是搭建頁面, 區(qū)別在于實現(xiàn)頁面搭建的方式. 做個簡單對比:

為什么需要

任何工具的存在都是更高效地解決問題. 頁面可視化搭建工具, 用于解決頁面生成的效率問題.可能前端工程師會覺得最有效率的頁面生成方式是打代碼, 但有搭建頁面需求的不只是前端工程師. 而可視化頁面搭建工具, 恰恰是面向"就缺一個前端工程師"的人員, 用于提升他們生成頁面的效率.

我們可以從一些使用場景來窺探頁面可視化搭建工具的應(yīng)用場合.

頁面小白做 H5

頁面小白不需要任何頁面相關(guān)的知識, 不需要了解 HTML/JS/CSS 這些概念, 只要像使用 Word 一樣在 H5 制作工具上操作, 就可以做出一個挺漂亮的頁面. H5 制作工具很多, 其中 百度H5 做很好不錯.

如: 小陳女票要生日了, 小陳為女票做了一個有創(chuàng)意的生日祝福頁面:

營銷活動頁面搭建

大多數(shù)互聯(lián)網(wǎng)公司需要做許多的活動頁面來承載運營業(yè)務(wù). 運營活動頁面的特點是: 頁面功能大同小異、時間緊、下線快、研發(fā)性很比低. 前端工程師無法持續(xù)開發(fā)無窮無盡的活動頁面, 需要采用活動頁面可視化搭建工具, 由運營人員/產(chǎn)品人員直接生成活動頁面. 研發(fā)人員的工作轉(zhuǎn)變?yōu)樘峁M足活動頁面業(yè)務(wù)需要的活動模板.

如: 抽獎活動頁面的可視化搭建:

中后臺系統(tǒng)開發(fā)

在公司內(nèi)部, 需要做許多的中后臺支持系統(tǒng), 這些系統(tǒng)的管理端一般用 web 頁面承載. 那么問題來了, 中后臺系統(tǒng)的前端工程, 怎么保障可用性、可維護(hù)性和頁面呈現(xiàn)一致性? 這些系統(tǒng)與后臺邏輯強關(guān)聯(lián), 一般由后臺開發(fā)人員開發(fā); 后臺開發(fā)人員寫代碼邏輯是沒有問題的, 但是其前端開發(fā)能力相對較弱. 所以需要增強他們開發(fā)前端頁面的能力, 前端開發(fā)能力由前端服務(wù)化提供.

前端服務(wù)化的第一種方式是提供一套組件庫, 如 餓了么的 Element. 組件庫一般由前端開發(fā)人員封裝成模板工程, 模板工程提供公共樣式和函數(shù)庫, 并對編寫的代碼做校驗和約束, 一定程度上降低了前端開發(fā)難度, 統(tǒng)一后臺人員代碼風(fēng)格. 此時后臺開發(fā)人員的開發(fā)方式為: 在代碼中用組件拼湊頁面, 然后寫代碼邏輯.

前端服務(wù)化的第二種方式, 是提供頁面可視化組裝系統(tǒng), 這個系統(tǒng)輸出組裝后的前端工程源碼. 這樣的系統(tǒng)比提供組件庫和模板工程的方式走得更遠(yuǎn): 通過可視化生成模板工程, 后臺開發(fā)人員不需要在代碼中拼湊前端頁面, 不需要關(guān)注前端組件, 只需要編寫代碼邏輯. 這種方式可以參考阿里的 ice.

阿里 ice 示例:

前端服務(wù)化的終極方式, 是直接提供一個開發(fā)的 IDE, 將動態(tài)邏輯的書寫也在 IDE 中完成. 如 美團(tuán)外賣前端可視化界面組裝平臺 —— 樂高(https://tech.meituan.com/waimai-lego.html), 前端服務(wù)化——頁面搭建工具的死與生(https://www.cnblogs.com/sskyy/p/6496287.html).

美團(tuán)樂高示例:

前端服務(wù)化

更加廣泛來說, 為頁面小白/運營人員/產(chǎn)品人員提供的頁面可視化生成工具, 也是賦予以上人員前端開發(fā)的能力. 所以頁面可視化搭建, 本質(zhì)上是前端服務(wù)化的一部分. 前端服務(wù)化總結(jié), 可以看百度的 前端即服務(wù)-通向零成本開發(fā)之路.

頁面可視化搭建工具區(qū)分維度

有了前文對頁面的基礎(chǔ)認(rèn)知, 終于進(jìn)入了本文的正題 -- 頁面可視化搭建工具. 前面已經(jīng)零星討論過頁面可視化搭建工具的定義, 再總結(jié)一下: 頁面可視化搭建, 是指用可視化交互的方式(對比編寫代碼的方式), 實現(xiàn)頁面的修改或生成; 頁面可視化搭建工具, 增強了使用者的前端開發(fā)能力, 提升了使用者修改或生成頁面的效率.

思考一個更具體的問題: 當(dāng)我們討論頁面可視化搭建工具時, 怎么進(jìn)行描述和討論? 換個角度提問題: 可以從什么維度對頁面可視化搭建工具進(jìn)行描述和區(qū)分?

頁面可視化搭建工具的區(qū)分維度包括:

系統(tǒng)功能

面向客群

編輯自由度

下文會對頁面可視化搭建工具的區(qū)分維度做介紹, 并對每個區(qū)分維度提供示例(這些示例不會展開討論, 且在不同維度下會多次使用同個示例).

系統(tǒng)功能

頁面可視化搭建工具的系統(tǒng)功能是指該工具在解決特定頁面可視化搭建問題上提供的核心能力. 頁面是由 HTMLTree, Data 和 DynamicLogic 三部分組成, 一個頁面可視化搭建工具提供的能力是編輯頁面組成部分之一或多部分. 對基于組件的頁面, 其可編輯單元為組件, 此時采用 ComponentTree 概念取代 HTMLTree.

HTMLTree 編輯

這類頁面搭建工具專注于可視化地編輯頁面 HTMLTree 部分, 一般可以對頁面做自由度較高的編輯. 其關(guān)鍵功能在于高自由度: 幾乎可以編輯頁面可見的所有元素, 能自由修改頁面結(jié)構(gòu)、頁面元素樣式和頁面數(shù)據(jù), 采用類似 Word, Photoshop 的可視化編輯方式. 這類工具一般只適用于生成邏輯比較簡單的頁面, 其中原因后續(xù)會講. 常說的 H5 制作工具就是指這類工具.

如: 百度H5、iH5

ComponentTree 編輯

這類頁面搭建工具針對組件化的頁面, 主要實現(xiàn) ComponentTree 的可視化編輯. 其核心功能在于頁面布局設(shè)計: 在 UI 組件列表中選擇合適的組件, 通過拖拉的方式將組件嵌入到頁面中, 生成帶布局和樣式的頁面.

如: ice 阿里飛冰、vue-layout

vue-layout 示例:

https://jaweii.github.io/Vue-Layout/dist/#/

頁面 Data 編輯

這類頁面搭建工具專注于可視化地編輯頁面的 Data 部分, 如圖片URL、按鈕文本、按鈕跳轉(zhuǎn)鏈接等. 這類搭建工具主要針對 HTMLTree 比較固定、能承載復(fù)雜業(yè)務(wù)邏輯的頁面. HTMLTree 固定的常見方式是頁面組件化, 只需修改頁面組件的 Data 就能快速地生成頁面. 其核心功能在于快速搭建承載業(yè)務(wù)邏輯的頁面. 通常營銷活動頁面就采用這種方式來可視化搭建.

如: 阿里云鳳蝶、開源的 pipeline

阿里云鳳蝶示例:

DynamicLogic 編輯

這類頁面搭建工具支持在界面上輸入邏輯代碼, 實現(xiàn)頁面 DynamicLogic 編輯, 如后臺接口請求邏輯, 業(yè)務(wù)判斷邏輯等. 這些邏輯代碼需要有合適的插入點, 一般在事件鉤子中提供插入點, 如頁面 onload、網(wǎng)絡(luò)請求狀態(tài)變更、按鈕事件、數(shù)據(jù)變更等. 做到可以支持編輯 DynamicLogic 是超牛逼的事情, 這類工具對頁面的理解最深入, 對開發(fā)者的技術(shù)能力、前端架構(gòu)能力和開發(fā)能力都要求很高.

如: 前端服務(wù)化——頁面搭建工具的死與生

系統(tǒng)功能組合

還有其他系統(tǒng)功能的組合, 可以綜合上面的典型類別來做討論.

面向客群

頁面可視化搭建工具的面向客群是指工具的的使用客群. 不同的使用客群, 其對頁面技術(shù)的認(rèn)知程度、搭建頁面的訴求有所不同, 所以可以從工具的面向客群來區(qū)分不同工具.

前端小白

前端小白是不具有前端知識的人群, 他們對頁面可視化搭建工具的訴求是交互性越高越好. 最適合他們的工具是像 Word, Powerpoint, Photoshop 等具有豐富交互功能, 且所見即所得的頁面搭建工具. 同時他們也不關(guān)心頁面最后用什么方式托管到互聯(lián)網(wǎng)上, 頁面編輯完成后要幫他們在公網(wǎng)上托管頁面, 并提供頁面鏈接, 方便前端小白將頁面發(fā)給自己的女朋友.

如頁面界的 Photoshop:

https://www.ih5.cn

運營/產(chǎn)品

運營、產(chǎn)品人員沒有開發(fā)人員頁面開發(fā)、邏輯編程的能力, 他們的訴求是可以快速搭建活動、產(chǎn)品頁面. 活動、產(chǎn)品頁面是承載著業(yè)務(wù)邏輯的: 如包含領(lǐng)取優(yōu)惠券功能、背景音樂播放功能、產(chǎn)品購買功能等. 運營、產(chǎn)品對頁面可視化搭建的另一個訴求是"快速": 一天好幾個活動, 怎么快怎么來. 面向運營、產(chǎn)品的可視化搭建工具, 需要將頁面的邏輯功能封裝在頁面區(qū)塊內(nèi), 支持通過點擊來選擇區(qū)塊, 然后在表單中編輯區(qū)塊所需數(shù)據(jù), 只對頁面進(jìn)行少量編輯就完成業(yè)務(wù)頁面搭建. 如領(lǐng)取優(yōu)惠券的頁面, 運營、產(chǎn)品只要在表單中填入優(yōu)惠券的 ID, 然后就快速生成領(lǐng)取該優(yōu)惠券的頁面, 不需要關(guān)心優(yōu)惠券在頁面上如何展示和被領(lǐng)取的具體邏輯.

如, 開源項目 pipeline:

中后臺開發(fā)人員

中后臺開發(fā)人員具有邏輯編程能力, 但其前端開發(fā)能力比較弱. 中后臺開發(fā)人員的訴求是, 在開發(fā)中后臺系統(tǒng)的 Web 管理端時, 不需要進(jìn)行重度的前端頁面結(jié)構(gòu)和樣式開發(fā), 可以專注在邏輯和數(shù)據(jù)處理上. 這要求頁面可視化搭建工具提供頁面搭建的區(qū)塊, 對區(qū)塊進(jìn)行可視化組合來輸出一個基本的前端頁面; 并在頁面搭建工具上提供業(yè)務(wù)邏輯編寫的輸入點, 或?qū)⒒厩岸隧撁嬖创a導(dǎo)出到 IDE 中供中后臺開發(fā)人員進(jìn)行業(yè)務(wù)邏輯的開發(fā).

如: ice 阿里飛冰

前端工程師

要啥頁面可視化搭建工具, 抓起鍵盤就開始干.

編輯自由度

頁面可視化搭建工具的編輯自由度, 是指頁面可編輯單元的粒度. 前端頁面的可編輯單元為 HTML 元素; 從前端頁面組件化的角度, 頁面可編輯單元為組件. 不同的編輯自由度的選擇, 是可視化搭建工具在不同業(yè)務(wù)場景下編輯自由度與編輯效率的平衡.

編輯自由度為 HTML 元素(左)與自由度為組件(右)的示例:

編輯自由度為 HTML 元素

編輯自由度為 HTML 元素的頁面搭建工具有以下特點: 可編輯的元素豐富、頁面結(jié)構(gòu)靈活、可視化編輯效率較低、業(yè)務(wù)邏輯封裝度較低. 這類工具的可編輯單元為 HTML 元素, 可以編輯元素的文本、樣式和行為, 可編輯的元素較豐富; 并且可以組合各種 HTML 元素到頁面中, 生成的頁面結(jié)構(gòu)靈活; 從生成頁面的角度, 編輯出一個頁面需要從基本的 HTML 元素開始搭建, 可視化編輯的工作量較大; 一個業(yè)務(wù)功能的實現(xiàn), 通常需要渲染多個 HTML 元素, 而這類工具可以自由增刪業(yè)務(wù)所需的 HTML 元素, 這導(dǎo)致無法固定地承載業(yè)務(wù)功能, 所以這類編輯工具生成的頁面, 業(yè)務(wù)邏輯封裝程度較低.

如: iH5、vvveb

vvveb 示例:

http://www.vvveb.com/vvvebjs/editor.html

編輯自由度為前端框架組件

編輯自由度為前端框架組件的頁面搭建工具有以下特點: 可編輯的元素依賴搭建工具包含的組件, 可視化編輯效率較高、業(yè)務(wù)邏輯封裝度較高. 這類工具的可編輯單元為前端框架的組件, 這些組件需要開發(fā)并導(dǎo)入到頁面可視化搭建工具中; 組件的渲染結(jié)果包含了多個 HTML 元素, 所以從生成頁面的角度, 編輯出一個頁面只需要組合組件, 可以較快速完成頁面生成; 組件本身承載了特定的業(yè)務(wù)功能, 所以這類編輯器生成的頁面, 業(yè)務(wù)邏輯封裝程度較高. 對于嵌套的組件, 需要重點解決組件數(shù)據(jù)流和組件布局適配.

如: Vue-Layout

vue-layout 示例:

https://jaweii.github.io/Vue-Layout/dist/#/

不嵌套的前端框架組件

移動端的頁面, 常用的布局策略是: 寬度鋪滿, 高度滾動. 如果前端框架組件都設(shè)置為鋪滿寬度, 頁面展示時組件只需在瀏覽器垂直方向上順序排列, 則組件組合時候不需要嵌套, 所有組件互為兄弟節(jié)點. 這種鋪滿寬度的組件, 非常適合搭建移動端頁面的場景: 在承載頁面邏輯的同時, 使得頁面的編輯更加簡單, 使用者只需要處理組件的順序, 不需要處理組件的嵌套.

如: 阿里云鳳蝶、pipeline

pipeline 示例:

https://page-pipepline.github.io/pipeline-editor/dist/index.html#/pipeline

理想的頁面可視化搭建框架

頁面可視化搭建工具, 需要對頁面做一些約定和約束, 在可視化搭建時遵循工具約定和約束來編輯頁面. 更全面討論頁面可視化搭建工具時, 不只是關(guān)注工具本身的功能, 還需要關(guān)注工具的依賴和約束, 如頁面可視化搭建工具的組件化方式、模板組織方式、編輯功能實現(xiàn)方式等. 從工具開發(fā)的角度說, 頁面可視化搭建工具是需要架構(gòu)設(shè)計的, 不同工具的區(qū)分, 其實是不同的頁面可視化搭建框架間的差異.

在互聯(lián)網(wǎng)公司中, 廣泛運用頁面可視化搭建工具來支持運營活動頁面的生成, 本章我們只探討運營頁面搭建工具的理想框架.

頁面可視化搭建框架的核心是實現(xiàn)頁面的可視化編輯. 運營頁面搭建工具, 聲明頁面配置數(shù)據(jù)并提供配置表單, 通過對配置表單的數(shù)據(jù)填充, 實現(xiàn)基于模板的頁面生成. 如圖所示:

可視化編輯

配置數(shù)據(jù)

對頁面的可編輯部分, 需要準(zhǔn)確描述可編輯部分所需的配置數(shù)據(jù); 配置數(shù)據(jù)是異構(gòu)的, 不同頁面、不同區(qū)塊的配置數(shù)據(jù)各不相同. 所以需要對不同頁面、不同區(qū)塊定義各自配置數(shù)據(jù)的數(shù)據(jù)結(jié)構(gòu)和字段類型. 理想的配置數(shù)據(jù)格式為 JSON, 因為其格式靈活, 前端友好; 理想的配置數(shù)據(jù)描述格式為 JSON Schema, 因為其支持表單動態(tài)生成和數(shù)據(jù)校驗.

配置表單生成

采用 JSON Schema, 容易生成配置表單, 只要按照 JSON Schema 對 JSON 數(shù)據(jù)的描述, 可以動態(tài)渲染出配置表單. 并且可以采用 JSON Schema 對編輯后的數(shù)據(jù)做格式校驗, 避免編輯錯誤.

如配置表單自動生成工具 json-editor:

組件化

組件是對 HTML 元素、元素布局和樣式、業(yè)務(wù)邏輯的封裝, 通過組件化的方式, 將頁面的搭建轉(zhuǎn)化為對組件的組合, 大大減低了運營頁面生成的編輯工作量, 實現(xiàn)快速搭建承載業(yè)務(wù)邏輯的運營頁面.

如 pipeline 的頁面組件化:

模板

模板是帶有默認(rèn)數(shù)據(jù)的頁面; 對于組件化的頁面, 模板是從組件庫中選取部分組件, 并帶有各個組件的默認(rèn)數(shù)據(jù). 采用模板生成頁面, 只需對模板進(jìn)行少量編輯即可實現(xiàn)頁面快速生成.

與編輯系統(tǒng)解偶

編輯系統(tǒng)和組件解偶,組件只需要遵循編輯系統(tǒng)的組織約定, 其具體開發(fā)過程和承載的邏輯與編輯系統(tǒng)無關(guān), 支持自由拓展頁面組件. 編輯系統(tǒng)與模板采用的前端框架解偶, 在遵循編輯系統(tǒng)約定下, 可以選擇不同的前端框架.

理想的運營頁面可視化搭建框架

  • 采用 JSON Schema 聲明配置數(shù)據(jù), 配置表單自動生成.
  • 采用組件化和頁面模板實現(xiàn)頁面生成效率的提升.
  • 編輯系統(tǒng)與組件、前端框架、模板解耦.
  • 在遵循編輯系統(tǒng)約定下, 組件可以自由拓展, 前端框架可以自由選擇.

頁面可視化搭建工具舉例

列舉一些頁面可視化搭工具, 并附帶少量點評.

阿里云鳳蝶

移動建站平臺

  • 支持頁面 Data 編輯, 面向運營、產(chǎn)品人員, 編輯自由度為無嵌套的組件.
  • 目前制作運營、活動頁面功能上最好的工具.
  • 提供頁面搭建的模板, 并支持自定義模板.
  • 配置表單基于 Schema 生成, 配置表單操作功能完善.

ice 阿里飛冰

飛冰 - 讓前端開發(fā)簡單而友好

  • 支持 ComponentTree 編輯, 面向中后臺開發(fā)人員, 編輯自由度為無嵌套的組件.
  • 使用"物料-區(qū)塊", 非前端開發(fā)人員可以快速搭建出可用、符合規(guī)范的頁面.
  • 頁面以源碼方式輸出.
  • 前端服務(wù)化的一種方式.

百度H5

創(chuàng)意,絕不雷同

  • 支持 HTMLTree 編輯, 面向前端小白, 編輯自由度為 HTML 元素.
  • 做 H5 的好工具, 功能上很強大, 對動畫的編輯功能做到細(xì)致.

美團(tuán)外賣前端可視化界面組裝平臺 —— 樂高

  • 支持 DynamicLogic 編輯, 面向中后臺開發(fā)人員, 編輯自由度為可嵌套的組件.
  • 前端服務(wù)化的一種方式.
  • 在美團(tuán)內(nèi)部支持了許多業(yè)務(wù)頁面, 沒有公網(wǎng)服務(wù), 了解該系統(tǒng)只能通過其介紹文章.

esview

Drag vue dynamic components to build your page,generate vue code.

開源項目, 模仿美團(tuán)點評的樂高.

  • 完整的可視化頁面搭建框架, 面向中后臺開發(fā)人員.
  • 頁面布局結(jié)果看起來比較亂, 自定義組件寫法比較詭異; 沒有融合業(yè)務(wù)邏輯, 不支持在框架中寫頁面的代碼邏輯.

gaea-editor

Design websites in your browser

開源項目.

  • 支持 ComponentTree 編輯, 面向中后臺開發(fā)人員, 編輯自由度為可嵌套的組件.
  • 頁面的拖拉生成, 實現(xiàn)得很完整.
  • 用于頁面設(shè)計, 所以偏向頁面元素的樣式控制.
  • 技術(shù)文章對可視化搭建工具數(shù)據(jù)流有深刻理解: 可視化在線編輯器架構(gòu)設(shè)計.

Vue-Layout

基于UI組件的Vue可視化布局、生成.vue代碼的工具。

開源項目.

  • 支持 ComponentTree 編輯, 面向中后臺開發(fā)人員, 編輯自由度為可嵌套的組件.
  • 工具的使用體驗效果不錯.

gen

根據(jù)接口生成頁面,減少重復(fù)性工作

  • 開源項目, 用起來感覺不錯.
  • 系統(tǒng)中有好幾個概念, 開始比較難上手.

其他

  • 請使用關(guān)鍵字 website-builder, site-builder 等關(guān)鍵字進(jìn)行搜索.
  • VvvebJs
  • grapesjs
  • Maha
  • 有贊微頁面
  • X-Page-Editor-Vue

業(yè)界實踐

列舉一些業(yè)界在頁面可視化搭工具上的實踐, 并附帶少量點評.

前端服務(wù)化——頁面搭建工具的死與生

  • 支持 DynamicLogic 的頁面可視化搭建 IDE.
  • 講解了頁面可視化搭建框架支持 DynamicLogic 的可行性和設(shè)計架構(gòu).
  • 作者在前端框架和 IDE 方面寫了好幾篇文章, 很深刻.

騰訊IMWeb: 積木系統(tǒng),將運營系統(tǒng)做到極致

2015年的文章! 完全說到點上.

  • 簡單易用的、可視化的可編輯頁面.
  • 通用的、簡便地組件接入機制.
  • 組件: 開發(fā)過程和系統(tǒng)無關(guān), 邏輯和系統(tǒng)無關(guān).

美團(tuán)外賣前端可視化界面組裝平臺 —— 樂高

  • 把系統(tǒng)架構(gòu)將得很清楚, 有借鑒意義.
  • 對頁面組成做了分析, 闡述了可視化配置的原理.

前端即服務(wù)-通向零成本開發(fā)之路

百度的前端服務(wù)化實踐, 都在這一篇.

可視化在線編輯器架構(gòu)設(shè)計

  • 可視化在線編輯器屬于前端開發(fā)引擎, 前端進(jìn)入了前端工業(yè)時代.
  • 深入討論了組件數(shù)據(jù)流.

百度外賣如何做到前端開發(fā)配置化

  • PPT 將原理和架構(gòu)講得很清楚.
  • 使用流程圖很清晰.
  • 項目開源了 -- block, 試用起來功能比較簡陋.

轉(zhuǎn)轉(zhuǎn)運營活動高效開發(fā)有哪些秘訣

基于組件的頁面生成系統(tǒng)-魔方, 采用 npm 管理組件.

QQ會員: 如何保證H5頁面高質(zhì)量低成本快速生成

內(nèi)部 ET 平臺, 包含活動管理的其他功能.

vue-design 桌面端頁面可視化構(gòu)建程序

esview -- 這可能是目前最好的vue代碼生成工具

總結(jié)

頁面由 HTMLTree, Data, DynamicLogin 組成.

頁面可視化搭建工具用于提升各類人員的頁面搭建效率.

頁面可視化搭建其實是前端服務(wù)化的方式.

頁面可視化搭建工具需要平衡自由度和效率.

組件和模板是頁面可視化搭建框架的核心.

全文結(jié)束, 本文對頁面可視化搭建的思考和討論可能還不夠完整, 歡迎討論和補充.

 

責(zé)任編輯:武曉燕 來源: 前端大全
相關(guān)推薦

2016-11-24 22:30:17

DeepLink移動App開發(fā)

2010-04-20 11:40:52

網(wǎng)絡(luò)爬蟲

2010-08-27 14:04:47

2025-03-05 11:03:36

2018-03-05 11:29:17

云計算云服務(wù)服務(wù)器

2015-03-09 15:26:36

2020-03-11 14:39:26

數(shù)據(jù)可視化地圖可視化地理信息

2019-01-04 10:41:07

系統(tǒng)內(nèi)存SRAM

2021-02-21 08:11:46

PythonDash工具

2018-05-31 08:25:13

誤區(qū)工具可視化

2018-09-26 16:15:31

數(shù)據(jù)可視化大數(shù)據(jù)數(shù)據(jù)分析

2025-02-25 11:14:39

2022-03-03 13:02:37

可視化網(wǎng)頁低代碼編程工具

2021-02-07 20:23:09

GoogeBlockly可視化編程

2021-04-14 16:20:39

可視化大數(shù)據(jù)工具

2018-02-04 22:22:46

大數(shù)據(jù)開發(fā)工具

2017-10-14 13:54:26

數(shù)據(jù)可視化數(shù)據(jù)信息可視化

2009-04-21 14:26:41

可視化監(jiān)控IT管理摩卡

2022-08-26 09:15:58

Python可視化plotly

2021-11-19 08:30:39

H5-Dooring 可視化組件商店
點贊
收藏

51CTO技術(shù)棧公眾號