diff --git a/examples/components/test.vue b/examples/components/test.vue index cbaf395..5d85d9c 100644 --- a/examples/components/test.vue +++ b/examples/components/test.vue @@ -1,16 +1,40 @@ <template> - <div>{{ row.name }}</div> + <Select v-model="model1" style="width:200px"> + <Option v-for="item in cityList" :value="item.value" :key="item.value">{{ item.label }}</Option> + </Select> </template> <script> export default { - props: { - row: Object - }, - mounted () { -// console.log(1); - }, - beforeDestroy () { -// console.log(2); + data () { + return { + cityList: [ + { + value: 'beijing', + label: '北京市' + }, + { + value: 'shanghai', + label: '上海市' + }, + { + value: 'shenzhen', + label: '深圳市' + }, + { + value: 'hangzhou', + label: '杭州市' + }, + { + value: 'nanjing', + label: '南京市' + }, + { + value: 'chongqing', + label: '重庆市' + } + ], + model1: '' + } } } </script> \ No newline at end of file diff --git a/examples/routers/table.vue b/examples/routers/table.vue index 5e47145..13ef550 100644 --- a/examples/routers/table.vue +++ b/examples/routers/table.vue @@ -1,159 +1,115 @@ <template> - <div> - <div style="margin: 10px"> - 显示边框 <i-switch v-model="showBorder" style="margin-right: 5px"></i-switch> - 显示斑马纹 <i-switch v-model="showStripe" style="margin-right: 5px"></i-switch> - 显示索引 <i-switch v-model="showIndex" style="margin-right: 5px"></i-switch> - 显示多选框 <i-switch v-model="showCheckbox" style="margin-right: 5px"></i-switch> - 显示表头 <i-switch v-model="showHeader" style="margin-right: 5px"></i-switch> - 表格滚动 <i-switch v-model="fixedHeader" style="margin-right: 5px"></i-switch> - <br> - <br> - 表格尺寸 - <Radio-group v-model="tableSize" type="button"> - <Radio label="large">大</Radio> - <Radio label="default">中</Radio> - <Radio label="small">小</Radio> - </Radio-group> - </div> - <Table :border="showBorder" :stripe="showStripe" :show-header="showHeader" :height="fixedHeader ? 250 : ''" :size="tableSize" :data="tableData3" :columns="tableColumns3"></Table> - </div> + <Table width="550" border highlight-row @on-selection-change="change2" @on-current-change="change1" :columns="columns2" :data="data3"></Table> </template> <script> export default { data () { return { - tableData3: [ + columns2: [ { - name: '王小明', - age: 18, - address: '北京市朝阳区芍药居', - date: '2016-10-03' + type: 'selection', + width: 60, + align: 'center' }, { - name: '张小刚', - age: 24, - address: '北京市海淀区西二旗', - date: '2016-10-01' + title: '姓名', + key: 'name', + width: 100, + fixed: 'left' }, { - name: '李小红', - age: 30, - address: '上海市浦东新区世纪大道', - date: '2016-10-02' + title: '年龄', + key: 'age', + width: 100 }, { - name: '周小伟', - age: 26, - address: '深圳市南山区深南大道', - date: '2016-10-04' + title: '省份', + key: 'province', + width: 100 + }, + { + title: '市区', + key: 'city', + width: 100 + }, + { + title: '地址', + key: 'address', + width: 200 }, { + title: '邮编', + key: 'zip', + width: 100 + }, + { + title: '操作', + key: 'action', + fixed: 'right', + width: 120, + render: (h, params) => { + return h('div', [ + h('Button', { + props: { + type: 'text', + size: 'small' + } + }, '查看'), + h('Button', { + props: { + type: 'text', + size: 'small' + } + }, '编辑') + ]); + } + } + ], + data3: [ + { name: '王小明', age: 18, address: '北京市朝阳区芍药居', - date: '2016-10-03' + province: '北京市', + city: '朝阳区', + zip: 100000 }, { name: '张小刚', - age: 24, + age: 25, address: '北京市海淀区西二旗', - date: '2016-10-01' + province: '北京市', + city: '海淀区', + zip: 100000 }, { name: '李小红', age: 30, address: '上海市浦东新区世纪大道', - date: '2016-10-02' + province: '上海市', + city: '浦东新区', + zip: 100000 }, { name: '周小伟', age: 26, address: '深圳市南山区深南大道', - date: '2016-10-04' + province: '广东', + city: '南山区', + zip: 100000 } - ], - showBorder: false, - showStripe: false, - showHeader: true, - showIndex: true, - showCheckbox: false, - fixedHeader: false, - tableSize: 'default' + ] } }, - computed: { - tableColumns3 () { - let columns = []; - if (this.showCheckbox) { - columns.push({ - type: 'selection', - width: 60, - align: 'center' - }) - } - if (this.showIndex) { - columns.push({ - type: 'index', - width: 60, - align: 'center' - }) - } - columns.push({ - title: '日期', - key: 'date', - sortable: true - }); - columns.push({ - title: '姓名', - key: 'name' - }); - columns.push({ - title: '年龄', - key: 'age', - sortable: true, - filters: [ - { - label: '大于25岁', - value: 1 - }, - { - label: '小于25岁', - value: 2 - } - ], - filterMultiple: false, - filterMethod (value, row) { - if (value === 1) { - return row.age > 25; - } else if (value === 2) { - return row.age < 25; - } - } - }); - columns.push({ - title: '地址', - key: 'address', - filters: [ - { - label: '北京', - value: '北京' - }, - { - label: '上海', - value: '上海' - }, - { - label: '深圳', - value: '深圳' - } - ], - filterMethod (value, row) { - return row.address.indexOf(value) > -1; - } - }); - return columns; + methods: { + change1 (d, l) { +// console.log(d) +// console.log(l) + }, + change2 (d, l) { + console.log(d); + console.log(l); } } } -</script> \ No newline at end of file +</script> diff --git a/src/components/table/table-body.vue b/src/components/table/table-body.vue index efb8183..c035ab0 100644 --- a/src/components/table/table-body.vue +++ b/src/components/table/table-body.vue @@ -11,7 +11,7 @@ :prefix-cls="prefixCls" @mouseenter.native.stop="handleMouseIn(row._index)" @mouseleave.native.stop="handleMouseOut(row._index)" - @click.native.stop="clickCurrentRow(row._index)" + @click.native="clickCurrentRow(row._index)" @dblclick.native.stop="dblclickCurrentRow(row._index)"> <td v-for="column in columns" :class="alignCls(column, row)"> <Cell -- libgit2 0.21.4