From 0b60ba74f0205a24ba7afb88457808ca8dcc4390 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=83=A1=E5=B0=8F=E6=A0=B9?= <hxg@haomo-studio.com> Date: Mon, 5 Feb 2018 21:35:43 +0100 Subject: [PATCH] add schema to component table --- .../components/tables/HmComplexTable.vue | 43 +++++++++++++++++++ src/views/haomo/components/tables/index.vue | 8 +++- 2 files changed, 49 insertions(+), 2 deletions(-) diff --git a/src/views/haomo/components/tables/HmComplexTable.vue b/src/views/haomo/components/tables/HmComplexTable.vue index 7185029..5ba140d 100644 --- a/src/views/haomo/components/tables/HmComplexTable.vue +++ b/src/views/haomo/components/tables/HmComplexTable.vue @@ -168,7 +168,50 @@ // 混入公共对象 mixins: [], props: { + /** + * 组件所使用的表定义schema。表定义schema,请使用 model2codejs 从pdm文件生æˆschema + */ schema: { + type: Object, + required: true + }, + /** + * æœç´¢è¿‡æ»¤é€‰é¡¹ã€‚默认没有过滤功能 + */ + filters: { + type: Array, + required: false + }, + /** + * æŒ‡å®šè¦æ˜¾ç¤ºçš„åˆ—ã€‚é»˜è®¤ä¸ºæ ¹æ®schema得到的所有列。完整示例为: + * [ + * { + * "name": "å§“å", + * "code": "username", + * "render": function(value){ + * return "<a href='value'></a>" + * } + * } + * ] + */ + columns: { + type: Array, + required: false + }, + /** + * 修改行数æ®çš„Hookå‡½æ•°ã€‚å‚æ•°ä¸ºè¡Œæ•°æ® rowData + */ + rowHook: { + type: Function, + required: false + }, + /** + * è¡¨æ ¼çš„é€‰é¡¹ï¼ŒåŒ…æ‹¬ï¼špage_size。完整的示例为: + * { + * "page_size": 10, // 默认为10æ¡æ•°æ®/页 + * } + */ + options: { type: Object, required: false } diff --git a/src/views/haomo/components/tables/index.vue b/src/views/haomo/components/tables/index.vue index 9f2633f..b6a68d7 100644 --- a/src/views/haomo/components/tables/index.vue +++ b/src/views/haomo/components/tables/index.vue @@ -1,11 +1,13 @@ <template> <div class="app-container calendar-list-container"> - <hm-complex-table></hm-complex-table> + <hm-complex-table :schema="schema"> + </hm-complex-table> </div> </template> <script> import HmComplexTable from './HmComplexTable.vue' + import schema from '../../schema' export default { name: 'HmComplexTable', @@ -20,7 +22,9 @@ }, filters: { }, - created() {}, + created() { + this.schema = schema['HmUser'] + }, methods: {} } </script> -- 2.21.0