幸福框架:元數據驅動界面,支持三級配置(生成期、運行期和開發期)


背景

信息系統開發中,配置表格、樹和表單的過程占據了開發的近一半的時間(可能更多),如果要支持運行期間修改配置,如:修改表格布局、表單布局、查詢面板,就會更加花費時間。這篇文章我就介紹一下如何使用元數據驅動UI的開發。

思路

支持三級元數據配置:

  1. 生成期配置:使用代碼生成器生成,只能由生成器修改。
  2. 運行期配置:使用配置修改器修改,運行期由維護或實施人員修改。
  3. 開發期配置:由開發人員維護。

三級配置,由上到下優先級越來越高,下級繼承上級同時覆蓋上級。如下圖所示:

實現

配置 + 代碼生成器

生成器項目結構

generated/Metadata.ejs

生成后的應用

項目結構

user/app/view/Grid.js

 1 Ext.define('Demo.user.view.Grid', {
 2     extend: 'Happy.grid.Panel',
 3     alias: 'widget.user_grid',
 4     requires: [
 5         'Demo.user.metadata.Manager'
 6     ],
 7 
 8     title: 'user grid',
 9 
10     getMetadataManager: function () {
11         var me = this;
12 
13         return Demo.user.metadata.Manager;
14     }
15 });

執行效果

備注

代碼下載:http://happy.codeplex.com/SourceControl/latest

今天只是介紹了一個思路,我也是剛開始實現這種思路,先分享出來,希望大家多給建議。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM