咱們固然但願可以更快的完成咱們的工做,這樣咱們纔能有更多的時間作其餘的事情,好比說測試、學習、放鬆。前端
軟件通常也就這麼幾個方面的工做要作,增、刪、改、查。若是歸結到頁面上來講,那麼無非也就這麼幾個頁面Form頁面(增)、列表頁面(查、刪)、編輯頁面(改)。很大程度上,你的項目就是由不一樣的實體的這麼幾個頁面組裝起來的。既然他們都是這麼幾個頁面,那麼,咱們是否是能夠考慮針對這幾個頁面進行抽象呢?而後使用數據描述這幾個頁面的行爲。git
經典倒敘,先上效果圖數據庫
目前就簡單實現了列表頁面和建立頁面。編輯頁面,跟建立頁面太像了。暫時尚未實現相關內容,不過,這個不是很重要了。後端
其實,每一個頁面都是存在固定的路數的。編輯器
好比說:post
列表頁面裏邊主要存在這麼幾個參數:列表名、列表頭上的按鈕、列表的表頭、列表內容、列表每一行中的操做、分頁控件。學習
表單頁面列表主要存在這麼幾個參數:表單名、表單內容項。測試
主要的參數出現的位置都是固定的。可是什麼地方出現什麼內容則是能夠變化的,通常狀況下,咱們都是經過代碼,一遍一遍的重寫這些頁面,而後來達到不一樣的應用之間的變化的目的。其實咱們是能夠經過數據來描述他們的。好比說向下面這樣。orm
而後將這些定義好的屬性經過後端渲染到頁面上。blog
就能夠達到,前邊展現的這種效果了。
由於數據類型是自定義的,因此數據存儲的字段也是能夠本身隨便預設的。而後系統就能夠直接支持這一數據類型。在這個Demo裏邊,我是簡單粗暴的使用了文件存儲Json文件的方式來進行保存的數據。
其實應該連接數據庫的。不過我在Demo項目裏邊留下了相關的接口,只要再實現一個數據庫版本的實例就能夠無縫對接了。
固然了這只是他的最初級的形態,由於如今寫的配置文件都是經過手寫來實現,未來能夠作一個編輯器。而且能夠實時看到調整過的效果。
其實這個作法,是來源於PaaS項目中的一個很小很小的功能塊。真正的PaaS項目這一整套東西都是在線上直接編輯看效果的。
這個項目未來會融入到我寫的PaaS Demo中做爲前端展現部分。 系列的目錄在 https://juejin.im/post/5eca2a186fb9a047e96b2884 這個部分會一點點完善。
雖然東西不大,可是仍是但願能給你一點點啓發。 項目地址 https://gitee.com/anxin1225/Dov.GenericWeb
部署到雲端了,能夠簡單體驗一下。