Commit 51356c2cd25ce24fe989ca727328979bb37fa76d

Authored by 梁灏
1 parent 548eac43

fixed #658

Showing 2 changed files with 113 additions and 161 deletions   Show diff stats
examples/routers/table.vue
1 -<!--<template>-->  
2 - <!--<div>-->  
3 - <!--<Table-->  
4 - <!--width="500"-->  
5 - <!--border-->  
6 - <!--highlight-row-->  
7 - <!--:columns="columns2"-->  
8 - <!--@on-selection-change="change2"-->  
9 - <!--:data="data3"></Table>-->  
10 - <!--<Button @click="addData">添加数据</Button>-->  
11 - <!--</div>-->  
12 -<!--</template>-->  
13 -<!--<script>-->  
14 - <!--import test from '../components/test.vue';-->  
15 - <!--export default {-->  
16 - <!--data () {-->  
17 - <!--return {-->  
18 - <!--columns2: [-->  
19 -<!--// {-->  
20 -<!--// type: 'selection',-->  
21 -<!--// width: 60,-->  
22 -<!--// align: 'center'-->  
23 -<!--// },-->  
24 - <!--{-->  
25 - <!--title: '姓名',-->  
26 - <!--key: 'name',-->  
27 - <!--width: 100,-->  
28 -<!--// sortable: true,-->  
29 - <!--fixed: 'right',-->  
30 - <!--render: (h, params) => {-->  
31 - <!--return h('div', [-->  
32 - <!--h('Button', {-->  
33 - <!--props: {-->  
34 - <!--type: 'primary',-->  
35 - <!--size: 'small'-->  
36 - <!--},-->  
37 - <!--on: {-->  
38 - <!--click: this.edit-->  
39 - <!--},-->  
40 - <!--}, '修改')-->  
41 - <!--]);-->  
42 - <!--}-->  
43 - <!--},-->  
44 - <!--{-->  
45 - <!--title: '年龄',-->  
46 - <!--key: 'age',-->  
47 - <!--sortable: true,-->  
48 -<!--// width: 100-->  
49 - <!--},-->  
50 - <!--{-->  
51 - <!--title: '省份',-->  
52 - <!--key: 'province',-->  
53 - <!--sortable: true,-->  
54 -<!--// fixed: 'right',-->  
55 -<!--// width: 100-->  
56 - <!--},-->  
57 -<!--// {-->  
58 -<!--// title: '市区',-->  
59 -<!--// key: 'city',-->  
60 -<!--// width: 100-->  
61 -<!--// },-->  
62 -<!--// {-->  
63 -<!--// title: '地址',-->  
64 -<!--// key: 'address',-->  
65 -<!--// width: 200-->  
66 -<!--// },-->  
67 -<!--// {-->  
68 -<!--// title: '邮编',-->  
69 -<!--// key: 'zip',-->  
70 -<!--// width: 100-->  
71 -<!--// },-->  
72 -<!--// {-->  
73 -<!--// title: '操作',-->  
74 -<!--// key: 'action',-->  
75 -<!--// fixed: 'right',-->  
76 -<!--// width: 120,-->  
77 -<!--// render: (h, params) => {-->  
78 -<!--// return h(test);-->  
79 -<!--// }-->  
80 -<!--// }-->  
81 - <!--],-->  
82 - <!--data3: [-->  
83 -<!--// {-->  
84 -<!--// name: '王小明',-->  
85 -<!--// age: 18,-->  
86 -<!--// address: '北京市朝阳区芍药居',-->  
87 -<!--// province: '北京市',-->  
88 -<!--// city: '朝阳区',-->  
89 -<!--// zip: 100000-->  
90 -<!--// },-->  
91 -<!--// {-->  
92 -<!--// name: '张小刚',-->  
93 -<!--// age: 25,-->  
94 -<!--// address: '北京市海淀区西二旗',-->  
95 -<!--// province: '北京市',-->  
96 -<!--// city: '海淀区',-->  
97 -<!--// zip: 100000-->  
98 -<!--// },-->  
99 -<!--// {-->  
100 -<!--// name: '李小红',-->  
101 -<!--// age: 30,-->  
102 -<!--// address: '上海市浦东新区世纪大道',-->  
103 -<!--// province: '上海市',-->  
104 -<!--// city: '浦东新区',-->  
105 -<!--// zip: 100000-->  
106 -<!--// },-->  
107 -<!--// {-->  
108 -<!--// name: '周小伟',-->  
109 -<!--// age: 26,-->  
110 -<!--// address: '深圳市南山区深南大道',-->  
111 -<!--// province: '广东',-->  
112 -<!--// city: '南山区',-->  
113 -<!--// zip: 100000-->  
114 -<!--// }-->  
115 - <!--]-->  
116 - <!--}-->  
117 - <!--},-->  
118 - <!--methods: {-->  
119 - <!--change1 (d, l) {-->  
120 -<!--// console.log(d)-->  
121 -<!--// console.log(l)-->  
122 - <!--},-->  
123 - <!--change2 (d, l) {-->  
124 - <!--console.log(d);-->  
125 - <!--console.log(l);-->  
126 - <!--},-->  
127 - <!--addData () {-->  
128 - <!--this.data3.push({-->  
129 - <!--name: '周小伟',-->  
130 - <!--age: 26,-->  
131 - <!--address: '深圳市南山区深南大道',-->  
132 - <!--province: '广东',-->  
133 - <!--city: '南山区',-->  
134 - <!--zip: 100000-->  
135 - <!--})-->  
136 - <!--}-->  
137 - <!--}-->  
138 - <!--}-->  
139 -<!--</script>-->  
140 -  
141 <template> 1 <template>
142 <div> 2 <div>
143 - <i-table :data="dtData" :height="400" :columns="dtCols" border highlight-row></i-table>  
144 - <Button type="ghost" @click="addData"> add data</Button> 3 + <Table
  4 + width="500"
  5 + height="200"
  6 + border
  7 + highlight-row
  8 + :columns="columns2"
  9 + @on-selection-change="change2"
  10 + :data="data3"></Table>
  11 + <Button @click="addData">添加数据</Button>
145 </div> 12 </div>
146 </template> 13 </template>
147 <script> 14 <script>
  15 + import test from '../components/test.vue';
148 export default { 16 export default {
149 - data(){  
150 - return{  
151 - dtData:[],  
152 - dtCols:[ 17 + data () {
  18 + return {
  19 + columns2: [
  20 +// {
  21 +// type: 'selection',
  22 +// width: 60,
  23 +// align: 'center'
  24 +// },
153 { 25 {
154 - type: 'selection',  
155 - width: 60,  
156 - align: 'center'  
157 - },  
158 - {  
159 - title: '分类名称', 26 + title: '姓名',
160 key: 'name', 27 key: 'name',
161 - sortable: true  
162 - },  
163 - {  
164 - title: '操作',  
165 - fixed: 'right',  
166 - width: 120, 28 + width: 100,
  29 +// sortable: true,
  30 +// fixed: 'right',
167 render: (h, params) => { 31 render: (h, params) => {
168 return h('div', [ 32 return h('div', [
169 h('Button', { 33 h('Button', {
@@ -177,15 +41,102 @@ @@ -177,15 +41,102 @@
177 }, '修改') 41 }, '修改')
178 ]); 42 ]);
179 } 43 }
180 - } 44 + },
  45 + {
  46 + title: '年龄',
  47 + key: 'age',
  48 + sortable: true,
  49 + width: 100
  50 + },
  51 + {
  52 + title: '省份',
  53 + key: 'province',
  54 + sortable: true,
  55 +// fixed: 'right',
  56 +// width: 100
  57 + },
  58 +// {
  59 +// title: '市区',
  60 +// key: 'city',
  61 +// width: 100
  62 +// },
  63 +// {
  64 +// title: '地址',
  65 +// key: 'address',
  66 +// width: 200
  67 +// },
  68 +// {
  69 +// title: '邮编',
  70 +// key: 'zip',
  71 +// width: 100
  72 +// },
  73 +// {
  74 +// title: '操作',
  75 +// key: 'action',
  76 +// fixed: 'right',
  77 +// width: 120,
  78 +// render: (h, params) => {
  79 +// return h(test);
  80 +// }
  81 +// }
  82 + ],
  83 + data3: [
  84 +// {
  85 +// name: '王小明',
  86 +// age: 18,
  87 +// address: '北京市朝阳区芍药居',
  88 +// province: '北京市',
  89 +// city: '朝阳区',
  90 +// zip: 100000
  91 +// },
  92 +// {
  93 +// name: '张小刚',
  94 +// age: 25,
  95 +// address: '北京市海淀区西二旗',
  96 +// province: '北京市',
  97 +// city: '海淀区',
  98 +// zip: 100000
  99 +// },
  100 +// {
  101 +// name: '李小红',
  102 +// age: 30,
  103 +// address: '上海市浦东新区世纪大道',
  104 +// province: '上海市',
  105 +// city: '浦东新区',
  106 +// zip: 100000
  107 +// },
  108 +// {
  109 +// name: '周小伟',
  110 +// age: 26,
  111 +// address: '深圳市南山区深南大道',
  112 +// province: '广东',
  113 +// city: '南山区',
  114 +// zip: 100000
  115 +// }
181 ] 116 ]
182 } 117 }
183 }, 118 },
184 methods: { 119 methods: {
  120 + change1 (d, l) {
  121 +// console.log(d)
  122 +// console.log(l)
  123 + },
  124 + change2 (d, l) {
  125 + console.log(d);
  126 + console.log(l);
  127 + },
185 addData () { 128 addData () {
186 - this.dtData.push({  
187 - name: '发送到附件是' 129 + this.data3.push({
  130 + name: '周小伟',
  131 + age: 26,
  132 + address: '深圳市南山区深南大道',
  133 + province: '广东',
  134 + city: '南山区',
  135 + zip: 100000
188 }) 136 })
  137 + },
  138 + edit () {
  139 +
189 } 140 }
190 } 141 }
191 } 142 }
src/components/table/mixin.js
@@ -33,6 +33,7 @@ export default { @@ -33,6 +33,7 @@ export default {
33 const firstFixedIndex = this.columns.findIndex((col) => col.fixed === 'right'); 33 const firstFixedIndex = this.columns.findIndex((col) => col.fixed === 'right');
34 if (firstFixedIndex === index) width += this.$parent.scrollBarWidth; 34 if (firstFixedIndex === index) width += this.$parent.scrollBarWidth;
35 } 35 }
  36 + if (width === '0') width = '';
36 return width; 37 return width;
37 } 38 }
38 } 39 }