Commit ceeb9361fd0cf3fbd4130688c52594acd842948f

Authored by 梁灏
1 parent 504f8c52

fixed Table bug in Vue 2.5.13

build/webpack.base.config.js
... ... @@ -63,7 +63,7 @@ module.exports = {
63 63 resolve: {
64 64 extensions: ['.js', '.vue'],
65 65 alias: {
66   - 'vue': 'vue/dist/vue.esm.js',
  66 + 'vue': 'vue/dist/vue.runtime.js',
67 67 '@': resolve('src')
68 68 }
69 69 },
... ...
build/webpack.dev.config.js
... ... @@ -27,8 +27,8 @@ module.exports = merge(webpackBaseConfig, {
27 27 resolve: {
28 28 alias: {
29 29 iview: '../../src/index',
30   - vue: 'vue/dist/vue.esm.js'
31   - // vue: 'vue/dist/vue.runtime.js'
  30 + // vue: 'vue/dist/vue.esm.js'
  31 + vue: 'vue/dist/vue.runtime.js'
32 32 }
33 33 },
34 34 plugins: [
... ...
examples/routers/table.vue
1   -<!--<template>-->
2   - <!--<div>-->
3   - <!--<Table width="550" height="200" highlight-row :loading="loading" :columns="columns3" :data="data1" ref="table" @on-current-change="handleChange" @on-row-click="rc">-->
4   - <!--<div slot="loading">-->
5   - <!--<Icon type="load-c" size=18 class="demo-spin-icon-load"></Icon>-->
6   - <!--<div>Loading</div>-->
7   - <!--</div>-->
8   - <!--</Table>-->
9   - <!--<br><br>-->
10   - <!--<Button @click="handleClear">clear</Button>-->
11   - <!--<Button @click="loading = !loading">Loading</Button>-->
12   - <!--</div>-->
13   -<!--</template>-->
14   -<!--<script>-->
15   - <!--export default {-->
16   - <!--data () {-->
17   - <!--return {-->
18   - <!--loading: false,-->
19   - <!--columns3: [-->
20   - <!--{-->
21   - <!--title: '姓名',-->
22   - <!--key: 'name',-->
23   - <!--width: 100,-->
24   - <!--fixed: 'left'-->
25   - <!--},-->
26   - <!--{-->
27   - <!--title: '年龄',-->
28   - <!--key: 'age',-->
29   - <!--width: 100-->
30   - <!--},-->
31   - <!--{-->
32   - <!--title: '省份',-->
33   - <!--key: 'province',-->
34   - <!--width: 100-->
35   - <!--},-->
36   - <!--{-->
37   - <!--title: '市区',-->
38   - <!--key: 'city',-->
39   - <!--width: 100-->
40   - <!--},-->
41   - <!--{-->
42   - <!--title: '地址',-->
43   - <!--key: 'address',-->
44   - <!--width: 200-->
45   - <!--},-->
46   - <!--{-->
47   - <!--title: '邮编',-->
48   - <!--key: 'zip',-->
49   - <!--width: 100-->
50   - <!--},-->
51   - <!--{-->
52   - <!--title: '操作',-->
53   - <!--key: 'action',-->
54   - <!--fixed: 'right',-->
55   - <!--width: 120,-->
56   - <!--render: (h, params) => {-->
57   - <!--return h('div', [-->
58   - <!--h('Button', {-->
59   - <!--props: {-->
60   - <!--type: 'text',-->
61   - <!--size: 'small'-->
62   - <!--}-->
63   - <!--}, '查看'),-->
64   - <!--h('Button', {-->
65   - <!--props: {-->
66   - <!--type: 'text',-->
67   - <!--size: 'small'-->
68   - <!--}-->
69   - <!--}, '编辑')-->
70   - <!--]);-->
71   - <!--}-->
72   - <!--}-->
73   - <!--],-->
74   - <!--data1: [-->
75   - <!--{-->
76   - <!--name: '王小明',-->
77   - <!--age: 18,-->
78   - <!--address: '北京市朝阳区芍药居'-->
79   - <!--},-->
80   - <!--{-->
81   - <!--name: '张小刚',-->
82   - <!--age: 25,-->
83   - <!--address: '北京市海淀区西二旗'-->
84   - <!--},-->
85   - <!--{-->
86   - <!--name: '李小红',-->
87   - <!--age: 30,-->
88   - <!--address: '上海市浦东新区世纪大道'-->
89   - <!--},-->
90   - <!--{-->
91   - <!--name: '周小伟',-->
92   - <!--age: 26,-->
93   - <!--address: '深圳市南山区深南大道'-->
94   - <!--}-->
95   - <!--]-->
96   - <!--}-->
97   - <!--},-->
98   - <!--methods: {-->
99   - <!--handleClear () {-->
100   - <!--this.$refs.table.clearCurrentRow();-->
101   - <!--},-->
102   - <!--handleChange (newData, oldData) {-->
103   -<!--// console.log(newData, oldData)-->
104   - <!--},-->
105   - <!--rc (data, index) {-->
106   - <!--console.log(data, index);-->
107   - <!--}-->
108   - <!--}-->
109   - <!--}-->
110   -<!--</script>-->
111   -
112   -<!--<style scoped>-->
113   - <!--.layout{-->
114   - <!--border: 1px solid #d7dde4;-->
115   - <!--background: #f5f7f9;-->
116   - <!--position: relative;-->
117   - <!--border-radius: 4px;-->
118   - <!--overflow: hidden;-->
119   - <!--}-->
120   - <!--.layout-breadcrumb{-->
121   - <!--padding: 10px 15px 0;-->
122   - <!--}-->
123   - <!--.layout-content{-->
124   - <!--min-height: 200px;-->
125   - <!--margin: 15px;-->
126   - <!--overflow: hidden;-->
127   - <!--background: #fff;-->
128   - <!--border-radius: 4px;-->
129   - <!--}-->
130   - <!--.layout-content-main{-->
131   - <!--padding: 10px;-->
132   - <!--}-->
133   - <!--.layout-copy{-->
134   - <!--text-align: center;-->
135   - <!--padding: 10px 0 20px;-->
136   - <!--color: #9ea7b4;-->
137   - <!--}-->
138   - <!--.layout-menu-left{-->
139   - <!--background: #464c5b;-->
140   - <!--}-->
141   - <!--.layout-header{-->
142   - <!--height: 60px;-->
143   - <!--background: #fff;-->
144   - <!--box-shadow: 0 1px 1px rgba(0,0,0,.1);-->
145   - <!--}-->
146   - <!--.layout-logo-left{-->
147   - <!--width: 90%;-->
148   - <!--height: 30px;-->
149   - <!--background: #5b6270;-->
150   - <!--border-radius: 3px;-->
151   - <!--margin: 15px auto;-->
152   - <!--}-->
153   - <!--.layout-ceiling-main a{-->
154   - <!--color: #9ba7b5;-->
155   - <!--}-->
156   - <!--.layout-hide-text .layout-text{-->
157   - <!--display: none;-->
158   - <!--}-->
159   - <!--.ivu-col{-->
160   - <!--/*transition: width .2s ease-in-out;*/-->
161   - <!--}-->
162   -<!--</style>-->
163   -<!--<template>-->
164   - <!--<div class="layout" :class="{'layout-hide-text': spanLeft < 5}">-->
165   - <!--<Row type="flex">-->
166   - <!--<Col :span="spanLeft" class="layout-menu-left">-->
167   - <!--<Menu active-name="1" theme="dark" width="auto">-->
168   - <!--<div class="layout-logo-left"></div>-->
169   - <!--<MenuItem name="1">-->
170   - <!--<Icon type="ios-navigate" :size="iconSize"></Icon>-->
171   - <!--<span class="layout-text">选项 1</span>-->
172   - <!--</MenuItem>-->
173   - <!--<MenuItem name="2">-->
174   - <!--<Icon type="ios-keypad" :size="iconSize"></Icon>-->
175   - <!--<span class="layout-text">选项 2</span>-->
176   - <!--</MenuItem>-->
177   - <!--<MenuItem name="3">-->
178   - <!--<Icon type="ios-analytics" :size="iconSize"></Icon>-->
179   - <!--<span class="layout-text">选项 3</span>-->
180   - <!--</MenuItem>-->
181   - <!--</Menu>-->
182   - <!--</Col>-->
183   - <!--<Col :span="spanRight">-->
184   - <!--<div class="layout-header">-->
185   - <!--<Button type="text" @click="toggleClick">-->
186   - <!--<Icon type="navicon" size="32"></Icon>-->
187   - <!--</Button>-->
188   - <!--</div>-->
189   - <!--<div class="layout-breadcrumb">-->
190   - <!--<Breadcrumb>-->
191   - <!--<BreadcrumbItem href="#">首页</BreadcrumbItem>-->
192   - <!--<BreadcrumbItem href="#">应用中心</BreadcrumbItem>-->
193   - <!--<BreadcrumbItem>某应用</BreadcrumbItem>-->
194   - <!--</Breadcrumb>-->
195   - <!--</div>-->
196   - <!--<div class="layout-content">-->
197   - <!--<div class="layout-content-main">-->
198   - <!--<Table stripe :columns="columns1" :data="data1"></Table>-->
199   - <!--</div>-->
200   - <!--<hr style="margin: 10px 0;" />-->
201   - <!--<div class="layout-content-main">-->
202   - <!--<Table stripe :columns="columns2" :data="data2" ref="csvTable" @on-row-click="cc" />-->
203   - <!--<i-button type="primary" size="large" @click="exportCSV">-->
204   - <!--<icon type="ios-download-outline"></icon> Export to CSV-->
205   - <!--</i-button>-->
206   - <!--</div>-->
207   - <!--</div>-->
208   - <!--</Col>-->
209   - <!--</Row>-->
210   - <!--</div>-->
211   -<!--</template>-->
212   -<!--<script>-->
213   - <!--export default {-->
214   - <!--data () {-->
215   - <!--return {-->
216   - <!--spanLeft: 5,-->
217   - <!--spanRight: 19,-->
218   - <!--columns1: [-->
219   - <!--{-->
220   - <!--title: '姓名',-->
221   - <!--key: 'name'-->
222   - <!--},-->
223   - <!--{-->
224   - <!--title: '年龄',-->
225   - <!--key: 'age'-->
226   - <!--},-->
227   - <!--{-->
228   - <!--title: '地址',-->
229   - <!--key: 'address'-->
230   - <!--},-->
231   - <!--{-->
232   - <!--title: '姓名',-->
233   - <!--key: 'name'-->
234   - <!--},-->
235   - <!--{-->
236   - <!--title: '年龄',-->
237   - <!--key: 'age'-->
238   - <!--},-->
239   - <!--{-->
240   - <!--title: '地址',-->
241   - <!--key: 'address'-->
242   - <!--},-->
243   - <!--{-->
244   - <!--title: '姓名',-->
245   - <!--key: 'name'-->
246   - <!--},-->
247   - <!--{-->
248   - <!--title: '年龄',-->
249   - <!--key: 'age'-->
250   - <!--},-->
251   - <!--{-->
252   - <!--title: '地址',-->
253   - <!--key: 'address'-->
254   - <!--}-->
255   - <!--],-->
256   - <!--data1: [-->
257   - <!--{-->
258   - <!--name: '王小明',-->
259   - <!--age: 18,-->
260   - <!--address: '北京市朝阳区芍药居'-->
261   - <!--},-->
262   - <!--{-->
263   - <!--name: '张小刚',-->
264   - <!--age: 25,-->
265   - <!--address: '北京市海淀区西二旗'-->
266   - <!--},-->
267   - <!--{-->
268   - <!--name: '李小红',-->
269   - <!--age: 30,-->
270   - <!--address: '上海市浦东新区世纪大道'-->
271   - <!--},-->
272   - <!--{-->
273   - <!--name: '周小伟',-->
274   - <!--age: 26,-->
275   - <!--address: '深圳市南山区深南大道'-->
276   - <!--},-->
277   - <!--{-->
278   - <!--name: '王小明',-->
279   - <!--age: 18,-->
280   - <!--address: '北京市朝阳区芍药居'-->
281   - <!--},-->
282   - <!--{-->
283   - <!--name: '张小刚',-->
284   - <!--age: 25,-->
285   - <!--address: '北京市海淀区西二旗'-->
286   - <!--},-->
287   - <!--{-->
288   - <!--name: '李小红',-->
289   - <!--age: 30,-->
290   - <!--address: '上海市浦东新区世纪大道'-->
291   - <!--},-->
292   - <!--{-->
293   - <!--name: '周小伟',-->
294   - <!--age: 26,-->
295   - <!--address: '深圳市南山区深南大道'-->
296   - <!--},-->
297   - <!--{-->
298   - <!--name: '王小明',-->
299   - <!--age: 18,-->
300   - <!--address: '北京市朝阳区芍药居'-->
301   - <!--},-->
302   - <!--{-->
303   - <!--name: '张小刚',-->
304   - <!--age: 25,-->
305   - <!--address: '北京市海淀区西二旗'-->
306   - <!--},-->
307   - <!--{-->
308   - <!--name: '李小红',-->
309   - <!--age: 30,-->
310   - <!--address: '上海市浦东新区世纪大道'-->
311   - <!--},-->
312   - <!--{-->
313   - <!--name: '周小伟',-->
314   - <!--age: 26,-->
315   - <!--address: '深圳市南山区深南大道'-->
316   - <!--},-->
317   - <!--{-->
318   - <!--name: '王小明',-->
319   - <!--age: 18,-->
320   - <!--address: '北京市朝阳区芍药居'-->
321   - <!--},-->
322   - <!--{-->
323   - <!--name: '张小刚',-->
324   - <!--age: 25,-->
325   - <!--address: '北京市海淀区西二旗'-->
326   - <!--},-->
327   - <!--{-->
328   - <!--name: '李小红',-->
329   - <!--age: 30,-->
330   - <!--address: '上海市浦东新区世纪大道'-->
331   - <!--},-->
332   - <!--{-->
333   - <!--name: '周小伟',-->
334   - <!--age: 26,-->
335   - <!--address: '深圳市南山区深南大道'-->
336   - <!--}-->
337   - <!--],-->
338   - <!--columns2: [-->
339   - <!--{-->
340   - <!--title: '姓名',-->
341   - <!--key: 'name'-->
342   - <!--},-->
343   - <!--{-->
344   - <!--title: '年龄',-->
345   - <!--key: 'age'-->
346   - <!--},-->
347   - <!--{-->
348   - <!--title: '地址',-->
349   - <!--key: 'address',-->
350   - <!--render: (h) => {-->
351   - <!--return h('Button', {-->
352   - <!--nativeOn: {-->
353   - <!--click: (event) => {-->
354   - <!--console.log(2)-->
355   - <!--event.stopPropagation();-->
356   - <!--}-->
357   - <!--}-->
358   - <!--}, 'click')-->
359   - <!--}-->
360   - <!--}-->
361   - <!--],-->
362   - <!--data2: [-->
363   - <!--{-->
364   - <!--name: '王小明',-->
365   - <!--age: 18,-->
366   - <!--address: '北京市朝\n阳区芍药居'-->
367   - <!--},-->
368   - <!--{-->
369   - <!--name: '张小刚',-->
370   - <!--age: 25,-->
371   - <!--address: '北京市海,淀区西二旗'-->
372   - <!--},-->
373   - <!--{-->
374   - <!--name: '李小红',-->
375   - <!--age: 30,-->
376   - <!--address: '上海市浦东\r新区世纪大道'-->
377   - <!--},-->
378   - <!--{-->
379   - <!--name: '周小伟',-->
380   - <!--age: 26,-->
381   - <!--address: '深圳市南山区深南大道'-->
382   - <!--}-->
383   - <!--]-->
384   - <!--};-->
385   - <!--},-->
386   - <!--computed: {-->
387   - <!--iconSize () {-->
388   - <!--return this.spanLeft === 5 ? 14 : 24;-->
389   - <!--}-->
390   - <!--},-->
391   - <!--methods: {-->
392   - <!--toggleClick () {-->
393   - <!--if (this.spanLeft === 5) {-->
394   - <!--this.spanLeft = 2;-->
395   - <!--this.spanRight = 22;-->
396   - <!--} else {-->
397   - <!--this.spanLeft = 5;-->
398   - <!--this.spanRight = 19;-->
399   - <!--}-->
400   - <!--},-->
401   - <!--exportCSV () {-->
402   - <!--this.$refs.csvTable.exportCsv({-->
403   - <!--filename: '原始数据',-->
404   - <!--separator: ';',-->
405   - <!--quoted: true-->
406   - <!--});-->
407   - <!--},-->
408   - <!--cc () {-->
409   - <!--console.log(1)-->
410   - <!--}-->
411   - <!--}-->
412   - <!--};-->
413   -<!--</script>-->
414   -
415   -<!--<template>-->
416   - <!--<div>-->
417   - <!--<Table :columns="columns8" :data="data7" size="small" ref="table"></Table>-->
418   - <!--<br>-->
419   - <!--<Button type="primary" size="large" @click="exportData(1)"><Icon type="ios-download-outline"></Icon> 导出原始数据</Button>-->
420   - <!--<Button type="primary" size="large" @click="exportData(2)"><Icon type="ios-download-outline"></Icon> 导出排序和过滤后的数据</Button>-->
421   - <!--<Button type="primary" size="large" @click="exportData(3)"><Icon type="ios-download-outline"></Icon> 导出自定义数据</Button>-->
422   - <!--</div>-->
423   -<!--</template>-->
424   -<!--<script>-->
425   - <!--export default {-->
426   - <!--data () {-->
427   - <!--return {-->
428   - <!--columns8: [-->
429   - <!--{-->
430   - <!--"title": "名称",-->
431   - <!--"key": "name",-->
432   - <!--"fixed": "left",-->
433   - <!--"width": 200-->
434   - <!--},-->
435   - <!--{-->
436   - <!--"title": "展示",-->
437   - <!--"key": "show",-->
438   - <!--"width": 150,-->
439   - <!--"sortable": true,-->
440   - <!--filters: [-->
441   - <!--{-->
442   - <!--label: '大于4000',-->
443   - <!--value: 1-->
444   - <!--},-->
445   - <!--{-->
446   - <!--label: '小于4000',-->
447   - <!--value: 2-->
448   - <!--}-->
449   - <!--],-->
450   - <!--filterMultiple: false,-->
451   - <!--filterMethod (value, row) {-->
452   - <!--if (value === 1) {-->
453   - <!--return row.show > 4000;-->
454   - <!--} else if (value === 2) {-->
455   - <!--return row.show < 4000;-->
456   - <!--}-->
457   - <!--}-->
458   - <!--},-->
459   - <!--{-->
460   - <!--"title": "唤醒",-->
461   - <!--"key": "weak",-->
462   - <!--"width": 150,-->
463   - <!--"sortable": true-->
464   - <!--},-->
465   - <!--{-->
466   - <!--"title": "登录",-->
467   - <!--"key": "signin",-->
468   - <!--"width": 150,-->
469   - <!--"sortable": true-->
470   - <!--},-->
471   - <!--{-->
472   - <!--"title": "点击",-->
473   - <!--"key": "click",-->
474   - <!--"width": 150,-->
475   - <!--"sortable": true-->
476   - <!--},-->
477   - <!--{-->
478   - <!--"title": "激活",-->
479   - <!--"key": "active",-->
480   - <!--"width": 150,-->
481   - <!--"sortable": true-->
482   - <!--},-->
483   - <!--{-->
484   - <!--"title": "7日留存",-->
485   - <!--"key": "day7",-->
486   - <!--"width": 150,-->
487   - <!--"sortable": true-->
488   - <!--},-->
489   - <!--{-->
490   - <!--"title": "30日留存",-->
491   - <!--"key": "day30",-->
492   - <!--"width": 150,-->
493   - <!--"sortable": true-->
494   - <!--},-->
495   - <!--{-->
496   - <!--"title": "次日留存",-->
497   - <!--"key": "tomorrow",-->
498   - <!--"width": 150,-->
499   - <!--"sortable": true-->
500   - <!--},-->
501   - <!--{-->
502   - <!--"title": "日活跃",-->
503   - <!--"key": "day",-->
504   - <!--"width": 150,-->
505   - <!--"sortable": true-->
506   - <!--},-->
507   - <!--{-->
508   - <!--"title": "周活跃",-->
509   - <!--"key": "week",-->
510   - <!--"width": 150,-->
511   - <!--"sortable": true-->
512   - <!--},-->
513   - <!--{-->
514   - <!--"title": "月活跃",-->
515   - <!--"key": "month",-->
516   - <!--"width": 150,-->
517   - <!--"sortable": true-->
518   - <!--}-->
519   - <!--],-->
520   - <!--data7: [-->
521   - <!--{-->
522   - <!--"name": "推广名称1",-->
523   - <!--"fav": 0,-->
524   - <!--"show": 7302,-->
525   - <!--"weak": 5627,-->
526   - <!--"signin": 1563,-->
527   - <!--"click": 4254,-->
528   - <!--"active": 1438,-->
529   - <!--"day7": 274,-->
530   - <!--"day30": 285,-->
531   - <!--"tomorrow": 1727,-->
532   - <!--"day": 558,-->
533   - <!--"week": 4440,-->
534   - <!--"month": 5610-->
535   - <!--},-->
536   - <!--{-->
537   - <!--"name": "推广名称2",-->
538   - <!--"fav": 0,-->
539   - <!--"show": 4720,-->
540   - <!--"weak": 4086,-->
541   - <!--"signin": 3792,-->
542   - <!--"click": 8690,-->
543   - <!--"active": 8470,-->
544   - <!--"day7": 8172,-->
545   - <!--"day30": 5197,-->
546   - <!--"tomorrow": 1684,-->
547   - <!--"day": 2593,-->
548   - <!--"week": 2507,-->
549   - <!--"month": 1537-->
550   - <!--},-->
551   - <!--{-->
552   - <!--"name": "推广名称3",-->
553   - <!--"fav": 0,-->
554   - <!--"show": 7181,-->
555   - <!--"weak": 8007,-->
556   - <!--"signin": 8477,-->
557   - <!--"click": 1879,-->
558   - <!--"active": 16,-->
559   - <!--"day7": 2249,-->
560   - <!--"day30": 3450,-->
561   - <!--"tomorrow": 377,-->
562   - <!--"day": 1561,-->
563   - <!--"week": 3219,-->
564   - <!--"month": 1588-->
565   - <!--},-->
566   - <!--{-->
567   - <!--"name": "推广名称4",-->
568   - <!--"fav": 0,-->
569   - <!--"show": 9911,-->
570   - <!--"weak": 8976,-->
571   - <!--"signin": 8807,-->
572   - <!--"click": 8050,-->
573   - <!--"active": 7668,-->
574   - <!--"day7": 1547,-->
575   - <!--"day30": 2357,-->
576   - <!--"tomorrow": 7278,-->
577   - <!--"day": 5309,-->
578   - <!--"week": 1655,-->
579   - <!--"month": 9043-->
580   - <!--},-->
581   - <!--{-->
582   - <!--"name": "推广名称5",-->
583   - <!--"fav": 0,-->
584   - <!--"show": 934,-->
585   - <!--"weak": 1394,-->
586   - <!--"signin": 6463,-->
587   - <!--"click": 5278,-->
588   - <!--"active": 9256,-->
589   - <!--"day7": 209,-->
590   - <!--"day30": 3563,-->
591   - <!--"tomorrow": 8285,-->
592   - <!--"day": 1230,-->
593   - <!--"week": 4840,-->
594   - <!--"month": 9908-->
595   - <!--},-->
596   - <!--{-->
597   - <!--"name": "推广名称6",-->
598   - <!--"fav": 0,-->
599   - <!--"show": 6856,-->
600   - <!--"weak": 1608,-->
601   - <!--"signin": 457,-->
602   - <!--"click": 4949,-->
603   - <!--"active": 2909,-->
604   - <!--"day7": 4525,-->
605   - <!--"day30": 6171,-->
606   - <!--"tomorrow": 1920,-->
607   - <!--"day": 1966,-->
608   - <!--"week": 904,-->
609   - <!--"month": 6851-->
610   - <!--},-->
611   - <!--{-->
612   - <!--"name": "推广名称7",-->
613   - <!--"fav": 0,-->
614   - <!--"show": 5107,-->
615   - <!--"weak": 6407,-->
616   - <!--"signin": 4166,-->
617   - <!--"click": 7970,-->
618   - <!--"active": 1002,-->
619   - <!--"day7": 8701,-->
620   - <!--"day30": 9040,-->
621   - <!--"tomorrow": 7632,-->
622   - <!--"day": 4061,-->
623   - <!--"week": 4359,-->
624   - <!--"month": 3676-->
625   - <!--},-->
626   - <!--{-->
627   - <!--"name": "推广名称8",-->
628   - <!--"fav": 0,-->
629   - <!--"show": 862,-->
630   - <!--"weak": 6520,-->
631   - <!--"signin": 6696,-->
632   - <!--"click": 3209,-->
633   - <!--"active": 6801,-->
634   - <!--"day7": 6364,-->
635   - <!--"day30": 6850,-->
636   - <!--"tomorrow": 9408,-->
637   - <!--"day": 2481,-->
638   - <!--"week": 1479,-->
639   - <!--"month": 2346-->
640   - <!--},-->
641   - <!--{-->
642   - <!--"name": "推广名称9",-->
643   - <!--"fav": 0,-->
644   - <!--"show": 567,-->
645   - <!--"weak": 5859,-->
646   - <!--"signin": 128,-->
647   - <!--"click": 6593,-->
648   - <!--"active": 1971,-->
649   - <!--"day7": 7596,-->
650   - <!--"day30": 3546,-->
651   - <!--"tomorrow": 6641,-->
652   - <!--"day": 1611,-->
653   - <!--"week": 5534,-->
654   - <!--"month": 3190-->
655   - <!--},-->
656   - <!--{-->
657   - <!--"name": "推广名称10",-->
658   - <!--"fav": 0,-->
659   - <!--"show": 3651,-->
660   - <!--"weak": 1819,-->
661   - <!--"signin": 4595,-->
662   - <!--"click": 7499,-->
663   - <!--"active": 7405,-->
664   - <!--"day7": 8710,-->
665   - <!--"day30": 5518,-->
666   - <!--"tomorrow": 428,-->
667   - <!--"day": 9768,-->
668   - <!--"week": 2864,-->
669   - <!--"month": 5811-->
670   - <!--}-->
671   - <!--]-->
672   - <!--}-->
673   - <!--},-->
674   - <!--methods: {-->
675   - <!--exportData (type) {-->
676   - <!--if (type === 1) {-->
677   - <!--this.$refs.table.exportCsv({-->
678   - <!--filename: '原始数据',-->
679   - <!--separator: ';',-->
680   - <!--quoted: true,-->
681   - <!--callback (data) {-->
682   - <!--console.log(data);-->
683   - <!--}-->
684   - <!--});-->
685   - <!--} else if (type === 2) {-->
686   - <!--this.$refs.table.exportCsv({-->
687   - <!--filename: '排序和过滤后的数据',-->
688   - <!--original: false-->
689   - <!--});-->
690   - <!--} else if (type === 3) {-->
691   - <!--this.$refs.table.exportCsv({-->
692   - <!--filename: '自定义数据',-->
693   - <!--columns: this.columns8.filter((col, index) => index < 4),-->
694   - <!--data: this.data7.filter((data, index) => index < 4)-->
695   - <!--});-->
696   - <!--}-->
697   - <!--}-->
698   - <!--}-->
699   - <!--}-->
700   -<!--</script>-->
701   -
702   -<!--<template>-->
703   - <!--<Table :columns="columns10" :data="data9"></Table>-->
704   -<!--</template>-->
705   -<!--<script>-->
706   - <!--import expandRow from '../components/tableExpand.vue';-->
707   - <!--export default {-->
708   - <!--components: { expandRow },-->
709   - <!--data () {-->
710   - <!--return {-->
711   - <!--columns10: [-->
712   - <!--{-->
713   - <!--type: 'expand',-->
714   - <!--width: 50,-->
715   - <!--render: (h, params) => {-->
716   - <!--return h(expandRow, {-->
717   - <!--props: {-->
718   - <!--row: params.row-->
719   - <!--}-->
720   - <!--})-->
721   - <!--}-->
722   - <!--},-->
723   - <!--{-->
724   - <!--title: 'Name',-->
725   - <!--key: 'name'-->
726   - <!--},-->
727   - <!--{-->
728   - <!--title: 'Age',-->
729   - <!--key: 'age',-->
730   - <!--fixed: 'right'-->
731   - <!--},-->
732   - <!--{-->
733   - <!--title: 'Address',-->
734   - <!--key: 'address',-->
735   - <!--fixed: 'right'-->
736   - <!--}-->
737   - <!--],-->
738   - <!--data9: [-->
739   - <!--{-->
740   - <!--name: 'John Brown',-->
741   - <!--age: 18,-->
742   - <!--address: 'New York No. 1 Lake Park',-->
743   - <!--job: 'Data engineer',-->
744   - <!--interest: 'badminton',-->
745   - <!--birthday: '1991-05-14',-->
746   - <!--book: 'Steve Jobs',-->
747   - <!--movie: 'The Prestige',-->
748   - <!--music: 'I Cry'-->
749   - <!--},-->
750   - <!--{-->
751   - <!--name: 'Jim Green',-->
752   - <!--age: 25,-->
753   - <!--address: 'London No. 1 Lake Park',-->
754   - <!--job: 'Data Scientist',-->
755   - <!--interest: 'volleyball',-->
756   - <!--birthday: '1989-03-18',-->
757   - <!--book: 'My Struggle',-->
758   - <!--movie: 'Roman Holiday',-->
759   - <!--music: 'My Heart Will Go On'-->
760   - <!--},-->
761   - <!--{-->
762   - <!--name: 'Joe Black',-->
763   - <!--age: 30,-->
764   - <!--address: 'Sydney No. 1 Lake Park',-->
765   - <!--job: 'Data Product Manager',-->
766   - <!--interest: 'tennis',-->
767   - <!--birthday: '1992-01-31',-->
768   - <!--book: 'Win',-->
769   - <!--movie: 'Jobs',-->
770   - <!--music: 'Don’t Cry'-->
771   - <!--},-->
772   - <!--{-->
773   - <!--name: 'Jon Snow',-->
774   - <!--age: 26,-->
775   - <!--address: 'Ottawa No. 2 Lake Park',-->
776   - <!--job: 'Data Analyst',-->
777   - <!--interest: 'snooker',-->
778   - <!--birthday: '1988-7-25',-->
779   - <!--book: 'A Dream in Red Mansions',-->
780   - <!--movie: 'A Chinese Ghost Story',-->
781   - <!--music: 'actor'-->
782   - <!--}-->
783   - <!--]-->
784   - <!--}-->
785   - <!--}-->
786   - <!--}-->
787   -<!--</script>-->
788   -
789   -
790 1 <template>
791   - <div>
792   - <div style="width: 550px;">
793   - <Table height="200" border :columns="columns2" :data="data4"></Table>
794   - </div>
795   - <br><br><br>
796   - <Table width="550" height="200" border :columns="columns2" :data="data4"></Table>
797   - </div>
  2 + <Table border :columns="columns6" :data="data5"></Table>
798 3 </template>
799 4 <script>
800 5 export default {
801 6 data () {
802 7 return {
803   - columns2: [
  8 + columns6: [
  9 + {
  10 + title: 'Date',
  11 + key: 'date'
  12 + },
804 13 {
805 14 title: 'Name',
806   - key: 'name',
807   - width: 100,
808   -// fixed: 'left'
  15 + key: 'name'
809 16 },
810 17 {
811 18 title: 'Age',
812 19 key: 'age',
813   - width: 100
814   - },
815   - {
816   - title: 'Province',
817   - key: 'province',
818   - width: 100
819   - },
820   - {
821   - title: 'City',
822   - key: 'city',
823   - width: 100
  20 + filters: [
  21 + {
  22 + label: 'Greater than 25',
  23 + value: 1
  24 + },
  25 + {
  26 + label: 'Less than 25',
  27 + value: 2
  28 + }
  29 + ],
  30 + filterMultiple: false,
  31 + filterMethod (value, row) {
  32 + if (value === 1) {
  33 + return row.age > 25;
  34 + } else if (value === 2) {
  35 + return row.age < 25;
  36 + }
  37 + }
824 38 },
825 39 {
826 40 title: 'Address',
827 41 key: 'address',
828   - width: 200
829   - },
830   - {
831   - title: 'Postcode',
832   - key: 'zip',
833   - width: 100
834   - },
835   - {
836   - title: 'Action',
837   - key: 'action',
838   - fixed: 'right',
839   - width: 120,
840   - render: (h, params) => {
841   - return h('div', [
842   - h('Button', {
843   - props: {
844   - type: 'text',
845   - size: 'small'
846   - }
847   - }, 'View'),
848   - h('Button', {
849   - props: {
850   - type: 'text',
851   - size: 'small'
852   - }
853   - }, 'Edit')
854   - ]);
  42 + filters: [
  43 + {
  44 + label: 'New York',
  45 + value: 'New York'
  46 + },
  47 + {
  48 + label: 'London',
  49 + value: 'London'
  50 + },
  51 + {
  52 + label: 'Sydney',
  53 + value: 'Sydney'
  54 + }
  55 + ],
  56 + filterMethod (value, row) {
  57 + return row.address.indexOf(value) > -1;
855 58 }
856 59 }
857 60 ],
858   - data4: [
  61 + data5: [
859 62 {
860 63 name: 'John Brown',
861 64 age: 18,
862 65 address: 'New York No. 1 Lake Park',
863   - province: 'America',
864   - city: 'New York',
865   - zip: 100000
  66 + date: '2016-10-03'
866 67 },
867 68 {
868 69 name: 'Jim Green',
869 70 age: 24,
870   - address: 'Washington, D.C. No. 1 Lake Park',
871   - province: 'America',
872   - city: 'Washington, D.C.',
873   - zip: 100000
  71 + address: 'London No. 1 Lake Park',
  72 + date: '2016-10-01'
874 73 },
875 74 {
876 75 name: 'Joe Black',
877 76 age: 30,
878 77 address: 'Sydney No. 1 Lake Park',
879   - province: 'Australian',
880   - city: 'Sydney',
881   - zip: 100000
  78 + date: '2016-10-02'
882 79 },
883 80 {
884 81 name: 'Jon Snow',
885 82 age: 26,
886 83 address: 'Ottawa No. 2 Lake Park',
887   - province: 'Canada',
888   - city: 'Ottawa',
889   - zip: 100000
890   - },
891   - {
892   - name: 'John Brown',
893   - age: 18,
894   - address: 'New York No. 1 Lake Park',
895   - province: 'America',
896   - city: 'New York',
897   - zip: 100000
898   - },
899   - {
900   - name: 'Jim Green',
901   - age: 24,
902   - address: 'Washington, D.C. No. 1 Lake Park',
903   - province: 'America',
904   - city: 'Washington, D.C.',
905   - zip: 100000
906   - },
907   - {
908   - name: 'Joe Black',
909   - age: 30,
910   - address: 'Sydney No. 1 Lake Park',
911   - province: 'Australian',
912   - city: 'Sydney',
913   - zip: 100000
914   - },
915   - {
916   - name: 'Jon Snow',
917   - age: 26,
918   - address: 'Ottawa No. 2 Lake Park',
919   - province: 'Canada',
920   - city: 'Ottawa',
921   - zip: 100000
  84 + date: '2016-10-04'
922 85 }
923   - ]
  86 + ],
924 87 }
925 88 }
926 89 }
927 90 </script>
928   -
... ...
src/components/table/table-head.vue
... ... @@ -30,7 +30,7 @@
30 30 <div slot="content" :class="[prefixCls + '-filter-list']" v-if="column._filterMultiple">
31 31 <div :class="[prefixCls + '-filter-list-item']">
32 32 <checkbox-group v-model="column._filterChecked">
33   - <checkbox v-for="item in column.filters" :key="column._columnKey" :label="item.value">{{ item.label }}</checkbox>
  33 + <checkbox v-for="(item, index) in column.filters" :key="index" :label="item.value">{{ item.label }}</checkbox>
34 34 </checkbox-group>
35 35 </div>
36 36 <div :class="[prefixCls + '-filter-footer']">
... ...