<Grid :data="table" ref="grid"></Grid>
var ex_table_01 = new Vue({
el: '#ex-table-01',
data: function () {
var self = this
var table = {
nowrap: false,
indexCol: true,
theme: 'default',
pagination: true,
multiHeaderSep: '//',
headerShow: true,
hoverShow: false,
sortMode: 'local',
param: {sortField: 'name1', 'sortDir': 'asc'},
total: 1,
page: 1,
columns: [
{name:'check', title:'#', width:40, fixed: 'left', render: function(h, param) {
var self = this
return h('Checkbox', {
props: {
value: param.value
},
on: {
input: function(value) {
alert(self.value)
}
}
})
}},
{name:'name1', title:'Name1', width:100, fixed: 'left', sortable: true},
{name:'name2', title:'Name2 Name2中中中 中中中中 ', width: 100},
{name:'name3', title:'Name3', headerRender: function(h, param){
return h('Button', {props: {type: 'primary', size: 'small'}, on: {click: function(){
self.$Message.info('按钮点击事件')
}}}, '自定义表头')
}, width:100},
{name:'name4', title:'Name4', align:'center', width:400, html: false},
{name:'name5', title:'Name5', width:80, render: function(h, param) {
var self = this
return h('Checkbox', {
props: {
value: param.value
},
on: {
input: function(value) {
alert(self.value)
}
}
})
}},
{name:'name6', title:'Name6', fixed: 'right'}
],
data: [],
combineCols:[['check', 'name1', 'name2', 'name3'], ['name5']],
buttons: [
[
{label: '切换样式', type: 'primary', onClick: function () {
if (self.$refs.grid.theme === 'default')
self.$refs.grid.theme = 'simple'
else
self.$refs.grid.theme = 'default'
}}
],
[
{label: '切换表头', type: 'primary', onClick: function () {
self.$refs.grid.store.states.headerShow = !self.$refs.grid.store.states.headerShow
}}
]
]
}
table.data.push({id:1, check: 'A1', name1:'A1', name2:0, name3:'C1', name4:'Hello', name5:'E1', name6:'F1'})
table.data.push({id:2, check: 'A1', name1:'A1', name2:'0', name3:'C1', name4:'D1', name5:'E1', name6:'F1'})
table.data.push({id:3, check: 'A1', name1:'A1', name2:'0', name3:'C1', name4:'D1', name5:'E1', name6:'F1'})
table.data.push({id:4, check: 'A2', name1:'A2', name2:'0', name3:'C1', name4:'D1', name5:'E2', name6:'F1'})
table.data.push({id:5, check: 'A2', name1:'A2', name2:'0', name3:'C1', name4:0, name5:'E2', name6:'F1'})
table.data.push({id:6, check: 'A1', name1:'A1', name2:'0', name3:'C1', name4:'D1', name5:'E3', name6:'F1'})
table.data.push({id:7, check: 'A1', name1:'A1', name2:'0', name3:'C1', name4:'D1', name5:'E3', name6:'F1'})
return {table:table}
}
})
当单元格的取值为 '--' 时,将合并至前一个单元格上。与横向单元格合并相关的配置有:
colspan 缺省是 false,当为 true 时启用横向合并colspanDelimeter 缺省是 '--',可以换成其它的。表示此单元合将合并至前一个非 '--' 的单元格上。以下示例的数据为:
{name1: 'A1', name2: '--', name3: '--', name4: '1'},
{name1: 'A1', name2: '--', name3: '--', name4: '2'},
{name1: 'A1', name2: 'A2', name3: 'A3', name4: '3'},
{name1: 'A1', name2: '--', name3: 'A3', name4: '4'},
{name1: 'A1', name2: 'A2', name3: '--', name4: '5'},