md-iview 1.0.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (118) hide show
  1. package/README.md +2 -0
  2. package/package.json +116 -0
  3. package/src/components/libs/util.js +117 -0
  4. package/src/components/md-error-page/403.less +92 -0
  5. package/src/components/md-error-page/403.vue +34 -0
  6. package/src/components/md-error-page/404.less +60 -0
  7. package/src/components/md-error-page/404.vue +34 -0
  8. package/src/components/md-error-page/500.less +73 -0
  9. package/src/components/md-error-page/500.vue +36 -0
  10. package/src/components/md-error-page/demo/index.less +22 -0
  11. package/src/components/md-error-page/demo/index.vue +97 -0
  12. package/src/components/md-form-item/index.js +3 -0
  13. package/src/components/md-icon/icon.vue +77 -0
  14. package/src/components/md-icon/icons.js +5 -0
  15. package/src/components/md-icon/index.js +11 -0
  16. package/src/components/md-icon/style/index.less +1 -0
  17. package/src/components/md-loading/index.js +55 -0
  18. package/src/components/md-loading/index.vue +53 -0
  19. package/src/components/md-loading/md-loading.js +38 -0
  20. package/src/components/md-print/demo/index.vue +260 -0
  21. package/src/components/md-print/index.js +123 -0
  22. package/src/components/md-rich-editor/index.vue +69 -0
  23. package/src/components/md-rich-editor/module/image-extend/index.js +216 -0
  24. package/src/components/md-scroll-bar/demo/index.vue +102 -0
  25. package/src/components/md-scroll-bar/index.js +3 -0
  26. package/src/components/md-scroll-bar/index.less +90 -0
  27. package/src/components/md-scroll-bar/index.vue +250 -0
  28. package/src/components/md-select/index.js +7 -0
  29. package/src/components/md-select/select.vue +841 -0
  30. package/src/components/md-shrinkable-menu/components/sidebarMenu.vue +167 -0
  31. package/src/components/md-shrinkable-menu/components/sidebarMenuShrink.vue +119 -0
  32. package/src/components/md-shrinkable-menu/demo/data/cachePage.js +1 -0
  33. package/src/components/md-shrinkable-menu/demo/data/currentPath.js +9 -0
  34. package/src/components/md-shrinkable-menu/demo/data/menu.js +575 -0
  35. package/src/components/md-shrinkable-menu/demo/data/menu2.js +1017 -0
  36. package/src/components/md-shrinkable-menu/demo/data/pageTagsList.js +153 -0
  37. package/src/components/md-shrinkable-menu/demo/index.less +297 -0
  38. package/src/components/md-shrinkable-menu/demo/index.vue +285 -0
  39. package/src/components/md-shrinkable-menu/index.vue +112 -0
  40. package/src/components/md-shrinkable-menu/sidebar.vue +195 -0
  41. package/src/components/md-shrinkable-menu/styles/menu.less +5 -0
  42. package/src/components/md-shrinkable-menu/styles/sidebar.less +363 -0
  43. package/src/components/md-split-pane/demo/index.vue +101 -0
  44. package/src/components/md-split-pane/index.js +3 -0
  45. package/src/components/md-split-pane/index.less +93 -0
  46. package/src/components/md-split-pane/index.vue +230 -0
  47. package/src/components/md-table/action-tooltip.vue +45 -0
  48. package/src/components/md-table/can-edit-v2.vue +823 -0
  49. package/src/components/md-table/can-edit.vue +723 -0
  50. package/src/components/md-table/custom-cell.vue +71 -0
  51. package/src/components/md-table/date-picker-cell-v2.vue +48 -0
  52. package/src/components/md-table/date-picker-cell.vue +39 -0
  53. package/src/components/md-table/demo/data/search.js +67 -0
  54. package/src/components/md-table/demo/data/table2csv.js +200 -0
  55. package/src/components/md-table/demo/data/table2excel.js +239 -0
  56. package/src/components/md-table/demo/data/table_data.js +251 -0
  57. package/src/components/md-table/demo/editable-table.vue +144 -0
  58. package/src/components/md-table/demo/exportable-table.vue +124 -0
  59. package/src/components/md-table/demo/widgets/header-search.vue +88 -0
  60. package/src/components/md-table/drop-down-cell-v2.vue +87 -0
  61. package/src/components/md-table/drop-down-cell.vue +81 -0
  62. package/src/components/md-table/editable-expand.vue +143 -0
  63. package/src/components/md-table/expand.vue +97 -0
  64. package/src/components/md-table/index.vue +53 -0
  65. package/src/components/md-table/iview-table/cell.vue +99 -0
  66. package/src/components/md-table/iview-table/expand.js +21 -0
  67. package/src/components/md-table/iview-table/export-csv.js +76 -0
  68. package/src/components/md-table/iview-table/header.js +16 -0
  69. package/src/components/md-table/iview-table/index.js +2 -0
  70. package/src/components/md-table/iview-table/mixin.js +31 -0
  71. package/src/components/md-table/iview-table/table-body.vue +101 -0
  72. package/src/components/md-table/iview-table/table-head.vue +311 -0
  73. package/src/components/md-table/iview-table/table-tr.vue +31 -0
  74. package/src/components/md-table/iview-table/table.vue +1026 -0
  75. package/src/components/md-table/iview-table/util.js +93 -0
  76. package/src/components/md-table/libs/table2excel.js +100 -0
  77. package/src/components/md-table/select-cell-v2.vue +64 -0
  78. package/src/components/md-table/select-cell.vue +46 -0
  79. package/src/components/md-table/table.less +76 -0
  80. package/src/components/md-toolbar/index.vue +171 -0
  81. package/src/components/md-tree/index.js +2 -0
  82. package/src/components/md-tree/node.vue +238 -0
  83. package/src/components/md-tree/render.js +17 -0
  84. package/src/components/md-tree/tree.vue +241 -0
  85. package/src/components/utilities/can.js +35 -0
  86. package/src/directives/index.js +34 -0
  87. package/src/directives/resize.js +27 -0
  88. package/src/directives/scroll.js +27 -0
  89. package/src/directives/style/bg-color.js +23 -0
  90. package/src/directives/style/color.js +23 -0
  91. package/src/directives/style/font-size.js +23 -0
  92. package/src/directives/style/height.js +23 -0
  93. package/src/directives/style/lineHeight.js +23 -0
  94. package/src/directives/style/margin.js +48 -0
  95. package/src/directives/style/opacity.js +23 -0
  96. package/src/directives/style/padding.js +48 -0
  97. package/src/directives/style/width.js +24 -0
  98. package/src/index.js +442 -0
  99. package/src/locale/lang.js +5 -0
  100. package/src/mixins/colorable.js +51 -0
  101. package/src/style/color/bezierEasing.less +110 -0
  102. package/src/style/color/colorPalette.less +75 -0
  103. package/src/style/color/colors.less +146 -0
  104. package/src/style/color/tinyColor.less +1184 -0
  105. package/src/style/common.less +72 -0
  106. package/src/style/components/_ripple.less +60 -0
  107. package/src/style/components/_shrinkable-menu.less +46 -0
  108. package/src/style/components/_toolbar.less +96 -0
  109. package/src/style/components/index.less +3 -0
  110. package/src/style/components/rich-editor.less +6 -0
  111. package/src/style/index.less +10 -0
  112. package/src/style/theme.less +155 -0
  113. package/src/utils/color.js +46 -0
  114. package/src/utils/console.js +105 -0
  115. package/src/utils/load.js +79 -0
  116. package/src/utils/mask.js +139 -0
  117. package/src/utils/mixins.js +5 -0
  118. package/src/utils/validate.js +271 -0
@@ -0,0 +1,71 @@
1
+ <template>
2
+ <div class="table-custom-cell">
3
+ <slot></slot>
4
+ <div v-if="iconType" style="display: flex">
5
+ <md-icon class="icon" :size="size" color="#000" :type="iconType"></md-icon>
6
+ </div>
7
+ <template v-if="text"><span class="text" @click="onclickText" :class="{'is-open':isOpen}">{{ text }}</span></template>
8
+ <template v-else>
9
+ <ul class="text-list">
10
+ <li class="text" v-for="(text, key) in texts" :key="key">{{ text }}</li>
11
+ </ul>
12
+ <!--<div class="text" style="display: block" @click="onclickText" v-for="text in texts">{{ text }}</div>-->
13
+ </template>
14
+
15
+ </div>
16
+ </template>
17
+
18
+ <script>
19
+ export default {
20
+ name: "custom-cell",
21
+ props:{
22
+ text:String,
23
+ texts:Array,
24
+ iconType:String,
25
+ size:{
26
+ type:Number|String,
27
+ default:16,
28
+ },
29
+ isOpen:{
30
+ type:Boolean,
31
+ default:false,
32
+ },
33
+ row:Object,
34
+ },
35
+ methods:{
36
+ onclickText() {
37
+ window.getApp.$emit('APP_TABLE_CUSTOM_CELL_CLICK', this.row);
38
+ }
39
+ }
40
+ }
41
+ </script>
42
+
43
+ <style lang="less" scoped>
44
+ .table-custom-cell {
45
+ display: flex;
46
+ align-items: center;
47
+ cursor: pointer;
48
+ .text-list{
49
+ list-style: none;
50
+ padding-left: 0 !important;
51
+ /*margin-bottom: 0 !important;;*/
52
+ margin:8px 0 !important;
53
+ }
54
+ .icon {
55
+ margin-right: 4px;
56
+
57
+ }
58
+
59
+ .is-open {
60
+ &:hover{
61
+ text-decoration: underline;
62
+ }
63
+ }
64
+
65
+ .text {
66
+ font-size: 13px;
67
+ color: #000;
68
+
69
+ }
70
+ }
71
+ </style>
@@ -0,0 +1,48 @@
1
+ <template>
2
+ <DatePicker class="table-cell-date-picker" type="datetime" :dateFormat="dateFormat" placeholder="" :value="value" :transfer="transfer" v-bind="$attrs" v-on="$listeners"></DatePicker>
3
+ </template>
4
+
5
+ <script>
6
+ import dayjs from 'dayjs';
7
+
8
+ export default {
9
+ name: "date-picker-cell",
10
+ props:{
11
+ date:String,
12
+ transfer:Boolean,
13
+ dateFormat:{
14
+ type:String,
15
+ default:'yyyy-MM-dd HH:mm:ss'
16
+ }
17
+ },
18
+ watch:{
19
+ date:{
20
+ immediate:true,
21
+ handler(to) {
22
+ this.value = dayjs(to).format(this.dateFormat);
23
+ }
24
+ },
25
+ value:{
26
+ immediate:true,
27
+ handler(to) {
28
+ to&&this.$emit('on-change', to);
29
+ }
30
+ }
31
+ },
32
+ data() {
33
+ return {
34
+ value: ''
35
+ }
36
+ }
37
+ }
38
+ </script>
39
+
40
+ <style lang="less">
41
+ .table-cell-date-picker {
42
+ border: 1px solid #d9d9d9;
43
+ .ivu-date-picker-editor {
44
+ height: 46px;
45
+ line-height: 46px;
46
+ }
47
+ }
48
+ </style>
@@ -0,0 +1,39 @@
1
+ <template>
2
+ <DatePicker type="datetime" format="yyyy-MM-dd HH:mm:ss" placeholder="" v-model="value" :transfer="transfer" v-bind="$attrs" v-on="$listeners"></DatePicker>
3
+ </template>
4
+
5
+ <script>
6
+ import dayjs from 'dayjs';
7
+
8
+ export default {
9
+ name: "date-picker-cell",
10
+ props:{
11
+ date:String,
12
+ transfer:Boolean
13
+ },
14
+ watch:{
15
+ date:{
16
+ immediate:true,
17
+ handler(to) {
18
+ this.value = dayjs(to).format("YYYY-MM-DD HH:mm:ss");
19
+ }
20
+ },
21
+ value:{
22
+ immediate:true,
23
+ handler(to) {
24
+ // console.log("vaue:",to);
25
+ to&&this.$emit('on-change', to);
26
+ }
27
+ }
28
+ },
29
+ data() {
30
+ return {
31
+ value: ''
32
+ }
33
+ }
34
+ }
35
+ </script>
36
+
37
+ <style scoped>
38
+
39
+ </style>
@@ -0,0 +1,67 @@
1
+ export const columns1 = [
2
+ {
3
+ key: 'name',
4
+ title: '姓名'
5
+ },
6
+ {
7
+ key: 'tel',
8
+ title: '电话号码'
9
+ }
10
+ ];
11
+
12
+ export const searchTable1 = [
13
+ {
14
+ name: 'Aresn',
15
+ tel: '17712345678'
16
+ },
17
+ {
18
+ name: 'Lison',
19
+ tel: '17787654321'
20
+ },
21
+ {
22
+ name: 'Lili',
23
+ tel: '12212345678'
24
+ },
25
+ {
26
+ name: 'Lucy',
27
+ tel: '13312345678'
28
+ }
29
+ ];
30
+
31
+ export const searchTable2 = [
32
+ {
33
+ name: 'Aresn',
34
+ tel: '17712345678'
35
+ },
36
+ {
37
+ name: 'Lison',
38
+ tel: '17787654321'
39
+ },
40
+ {
41
+ name: 'Lili',
42
+ tel: '12212345678'
43
+ },
44
+ {
45
+ name: 'Lucy',
46
+ tel: '13312345678'
47
+ }
48
+ ];
49
+
50
+ export const searchTable3 = [
51
+ {
52
+ name: 'Aresn',
53
+ tel: '17712345678'
54
+ },
55
+ {
56
+ name: 'Lison',
57
+ tel: '17787654321'
58
+ },
59
+ {
60
+ name: 'Lili',
61
+ tel: '12212345678'
62
+ },
63
+ {
64
+ name: 'Lucy',
65
+ tel: '13312345678'
66
+ }
67
+ ];
@@ -0,0 +1,200 @@
1
+ export const table2csvData = [
2
+ {
3
+ 'name': '推广名称1',
4
+ 'fav': 0,
5
+ 'show': 7302,
6
+ 'weak': 5627,
7
+ 'signin': 1563,
8
+ 'click': 4254,
9
+ 'active': 1438,
10
+ 'day7': 274,
11
+ 'day30': 285,
12
+ 'tomorrow': 1727,
13
+ 'day': 558,
14
+ 'week': 4440,
15
+ 'month': 5610
16
+ },
17
+ {
18
+ 'name': '推广名称2',
19
+ 'fav': 0,
20
+ 'show': 4720,
21
+ 'weak': 4086,
22
+ 'signin': 3792,
23
+ 'click': 8690,
24
+ 'active': 8470,
25
+ 'day7': 8172,
26
+ 'day30': 5197,
27
+ 'tomorrow': 1684,
28
+ 'day': 2593,
29
+ 'week': 2507,
30
+ 'month': 1537
31
+ },
32
+ {
33
+ 'name': '推广名称3',
34
+ 'fav': 0,
35
+ 'show': 7181,
36
+ 'weak': 8007,
37
+ 'signin': 8477,
38
+ 'click': 1879,
39
+ 'active': 16,
40
+ 'day7': 2249,
41
+ 'day30': 3450,
42
+ 'tomorrow': 377,
43
+ 'day': 1561,
44
+ 'week': 3219,
45
+ 'month': 1588
46
+ },
47
+ {
48
+ 'name': '推广名称4',
49
+ 'fav': 0,
50
+ 'show': 9911,
51
+ 'weak': 8976,
52
+ 'signin': 8807,
53
+ 'click': 8050,
54
+ 'active': 7668,
55
+ 'day7': 1547,
56
+ 'day30': 2357,
57
+ 'tomorrow': 7278,
58
+ 'day': 5309,
59
+ 'week': 1655,
60
+ 'month': 9043
61
+ },
62
+ {
63
+ 'name': '推广名称5',
64
+ 'fav': 0,
65
+ 'show': 934,
66
+ 'weak': 1394,
67
+ 'signin': 6463,
68
+ 'click': 5278,
69
+ 'active': 9256,
70
+ 'day7': 209,
71
+ 'day30': 3563,
72
+ 'tomorrow': 8285,
73
+ 'day': 1230,
74
+ 'week': 4840,
75
+ 'month': 9908
76
+ },
77
+ {
78
+ 'name': '推广名称6',
79
+ 'fav': 0,
80
+ 'show': 6856,
81
+ 'weak': 1608,
82
+ 'signin': 457,
83
+ 'click': 4949,
84
+ 'active': 2909,
85
+ 'day7': 4525,
86
+ 'day30': 6171,
87
+ 'tomorrow': 1920,
88
+ 'day': 1966,
89
+ 'week': 904,
90
+ 'month': 6851
91
+ },
92
+ {
93
+ 'name': '推广名称7',
94
+ 'fav': 0,
95
+ 'show': 5107,
96
+ 'weak': 6407,
97
+ 'signin': 4166,
98
+ 'click': 7970,
99
+ 'active': 1002,
100
+ 'day7': 8701,
101
+ 'day30': 9040,
102
+ 'tomorrow': 7632,
103
+ 'day': 4061,
104
+ 'week': 4359,
105
+ 'month': 3676
106
+ }
107
+ ];
108
+
109
+ export const csvColumns = [
110
+ {
111
+ 'title': '名称',
112
+ 'key': 'name',
113
+ 'fixed': 'left',
114
+ 'width': 200
115
+ },
116
+ {
117
+ 'title': '展示',
118
+ 'key': 'show',
119
+ 'width': 150,
120
+ 'sortable': true,
121
+ filters: [
122
+ {
123
+ label: '大于4000',
124
+ value: 1
125
+ },
126
+ {
127
+ label: '小于4000',
128
+ value: 2
129
+ }
130
+ ],
131
+ filterMultiple: false,
132
+ filterMethod (value, row) {
133
+ if (value === 1) {
134
+ return row.show > 4000;
135
+ } else if (value === 2) {
136
+ return row.show < 4000;
137
+ }
138
+ }
139
+ },
140
+ {
141
+ 'title': '唤醒',
142
+ 'key': 'weak',
143
+ 'width': 150,
144
+ 'sortable': true
145
+ },
146
+ {
147
+ 'title': '登录',
148
+ 'key': 'signin',
149
+ 'width': 150,
150
+ 'sortable': true
151
+ },
152
+ {
153
+ 'title': '点击',
154
+ 'key': 'click',
155
+ 'width': 150,
156
+ 'sortable': true
157
+ },
158
+ {
159
+ 'title': '激活',
160
+ 'key': 'active',
161
+ 'width': 150,
162
+ 'sortable': true
163
+ },
164
+ {
165
+ 'title': '7日留存',
166
+ 'key': 'day7',
167
+ 'width': 150,
168
+ 'sortable': true
169
+ },
170
+ {
171
+ 'title': '30日留存',
172
+ 'key': 'day30',
173
+ 'width': 150,
174
+ 'sortable': true
175
+ },
176
+ {
177
+ 'title': '次日留存',
178
+ 'key': 'tomorrow',
179
+ 'width': 150,
180
+ 'sortable': true
181
+ },
182
+ {
183
+ 'title': '日活跃',
184
+ 'key': 'day',
185
+ 'width': 150,
186
+ 'sortable': true
187
+ },
188
+ {
189
+ 'title': '周活跃',
190
+ 'key': 'week',
191
+ 'width': 150,
192
+ 'sortable': true
193
+ },
194
+ {
195
+ 'title': '月活跃',
196
+ 'key': 'month',
197
+ 'width': 150,
198
+ 'sortable': true
199
+ }
200
+ ];
@@ -0,0 +1,239 @@
1
+ export const table2excelData = [
2
+ {
3
+ 'name': '推广名称1',
4
+ 'fav': 0,
5
+ 'show': 7302,
6
+ 'weak': 5627,
7
+ 'signin': 1563,
8
+ 'click': 4254,
9
+ 'active': 1438,
10
+ 'day7': 274,
11
+ 'day30': 285,
12
+ 'tomorrow': 1727,
13
+ 'day': 558,
14
+ 'week': 4440,
15
+ 'month': 5610
16
+ },
17
+ {
18
+ 'name': '推广名称2',
19
+ 'fav': 0,
20
+ 'show': 4720,
21
+ 'weak': 4086,
22
+ 'signin': 3792,
23
+ 'click': 8690,
24
+ 'active': 8470,
25
+ 'day7': 8172,
26
+ 'day30': 5197,
27
+ 'tomorrow': 1684,
28
+ 'day': 2593,
29
+ 'week': 2507,
30
+ 'month': 1537
31
+ },
32
+ {
33
+ 'name': '推广名称3',
34
+ 'fav': 0,
35
+ 'show': 7181,
36
+ 'weak': 8007,
37
+ 'signin': 8477,
38
+ 'click': 1879,
39
+ 'active': 16,
40
+ 'day7': 2249,
41
+ 'day30': 3450,
42
+ 'tomorrow': 377,
43
+ 'day': 1561,
44
+ 'week': 3219,
45
+ 'month': 1588
46
+ },
47
+ {
48
+ 'name': '推广名称4',
49
+ 'fav': 0,
50
+ 'show': 9911,
51
+ 'weak': 8976,
52
+ 'signin': 8807,
53
+ 'click': 8050,
54
+ 'active': 7668,
55
+ 'day7': 1547,
56
+ 'day30': 2357,
57
+ 'tomorrow': 7278,
58
+ 'day': 5309,
59
+ 'week': 1655,
60
+ 'month': 9043
61
+ },
62
+ {
63
+ 'name': '推广名称5',
64
+ 'fav': 0,
65
+ 'show': 934,
66
+ 'weak': 1394,
67
+ 'signin': 6463,
68
+ 'click': 5278,
69
+ 'active': 9256,
70
+ 'day7': 209,
71
+ 'day30': 3563,
72
+ 'tomorrow': 8285,
73
+ 'day': 1230,
74
+ 'week': 4840,
75
+ 'month': 9908
76
+ },
77
+ {
78
+ 'name': '推广名称6',
79
+ 'fav': 0,
80
+ 'show': 6856,
81
+ 'weak': 1608,
82
+ 'signin': 457,
83
+ 'click': 4949,
84
+ 'active': 2909,
85
+ 'day7': 4525,
86
+ 'day30': 6171,
87
+ 'tomorrow': 1920,
88
+ 'day': 1966,
89
+ 'week': 904,
90
+ 'month': 6851
91
+ },
92
+ {
93
+ 'name': '推广名称7',
94
+ 'fav': 0,
95
+ 'show': 5107,
96
+ 'weak': 6407,
97
+ 'signin': 4166,
98
+ 'click': 7970,
99
+ 'active': 1002,
100
+ 'day7': 8701,
101
+ 'day30': 9040,
102
+ 'tomorrow': 7632,
103
+ 'day': 4061,
104
+ 'week': 4359,
105
+ 'month': 3676
106
+ },
107
+ {
108
+ 'name': '推广名称8',
109
+ 'fav': 0,
110
+ 'show': 5107,
111
+ 'weak': 6407,
112
+ 'signin': 4166,
113
+ 'click': 7970,
114
+ 'active': 1002,
115
+ 'day7': 8701,
116
+ 'day30': 9040,
117
+ 'tomorrow': 7632,
118
+ 'day': 4061,
119
+ 'week': 4359,
120
+ 'month': 3676
121
+ },
122
+ {
123
+ 'name': '推广名称9',
124
+ 'fav': 0,
125
+ 'show': 5107,
126
+ 'weak': 6407,
127
+ 'signin': 4166,
128
+ 'click': 7970,
129
+ 'active': 1002,
130
+ 'day7': 8701,
131
+ 'day30': 9040,
132
+ 'tomorrow': 7632,
133
+ 'day': 4061,
134
+ 'week': 4359,
135
+ 'month': 3676
136
+ },
137
+ {
138
+ 'name': '推广名称10',
139
+ 'fav': 0,
140
+ 'show': 5107,
141
+ 'weak': 6407,
142
+ 'signin': 4166,
143
+ 'click': 7970,
144
+ 'active': 1002,
145
+ 'day7': 8701,
146
+ 'day30': 9040,
147
+ 'tomorrow': 7632,
148
+ 'day': 4061,
149
+ 'week': 4359,
150
+ 'month': 3676
151
+ }
152
+ ];
153
+
154
+ import HeaderSearch from '../widgets/header-search'
155
+ export const excelColumns = [
156
+ {
157
+ 'title': '名称',
158
+ 'key': 'name',
159
+ renderHeader:(h, param)=>{
160
+ let nodeTitle = h('span',param.column.title);
161
+ let cityList= [
162
+ {
163
+ value: 'New York',
164
+ label: 'New York'
165
+ },
166
+ {
167
+ value: 'London',
168
+ label: 'London'
169
+ },
170
+ {
171
+ value: 'Sydney',
172
+ label: 'Sydney'
173
+ }];
174
+
175
+ let nodeDropdown = h(HeaderSearch, {
176
+ props:{
177
+ items:cityList,
178
+ }
179
+ })
180
+ return h('div',[
181
+ nodeTitle,
182
+ nodeDropdown
183
+ ])
184
+ }
185
+ },
186
+ {
187
+ 'title': '展示',
188
+ 'key': 'show',
189
+ 'sortable': true,
190
+ filters: [
191
+ {
192
+ label: '大于4000',
193
+ value: 1
194
+ },
195
+ {
196
+ label: '小于4000',
197
+ value: 2
198
+ }
199
+ ],
200
+ filterMultiple: false,
201
+ filterMethod (value, row) {
202
+ if (value === 1) {
203
+ return row.show > 4000;
204
+ } else if (value === 2) {
205
+ return row.show < 4000;
206
+ }
207
+ }
208
+ },
209
+ {
210
+ 'title': '唤醒',
211
+ 'key': 'weak',
212
+ 'sortable': true
213
+ },
214
+ {
215
+ 'title': '登录',
216
+ 'key': 'signin',
217
+ 'sortable': true
218
+ },
219
+ {
220
+ 'title': '点击',
221
+ 'key': 'click',
222
+ 'sortable': true
223
+ },
224
+ {
225
+ 'title': '激活',
226
+ 'key': 'active',
227
+ 'sortable': true
228
+ },
229
+ {
230
+ 'title': '30日留存',
231
+ 'key': 'day30',
232
+ 'sortable': true
233
+ },
234
+ {
235
+ 'title': '月活跃',
236
+ 'key': 'month',
237
+ 'sortable': true
238
+ }
239
+ ];