Blame view

test/routers/table.vue 9.46 KB
e7e8c8ff   梁灏   update Table
1
2
3
4
5
  <style>
      body{
          height: auto;
      }
  </style>
2cb8a6d9   梁灏   commit Table comp...
6
7
  <template>
      <div>
0d136465   梁灏   update Table
8
9
          <!--<i-table size="large" border stripe :columns="columns" :data="data"></i-table>-->
          <br>
e7e8c8ff   梁灏   update Table
10
          <i-table
5d0499ce   梁灏   update Table
11
                  width="850"
39311a50   梁灏   update Table
12
                  :height="height"
b8a43000   梁灏   update Table
13
                  stripe
39311a50   梁灏   update Table
14
                  :border="true"
b8a43000   梁灏   update Table
15
16
                  highlight-row
                  :show-header="true"
e7e8c8ff   梁灏   update Table
17
18
19
20
21
22
                  :columns="columns"
                  :data="data"
                  :row-class-name="rowClsName"
                  @on-current-change="current"
                  @on-select="select"
                  @on-selection-change="schange"
35ad3764   梁灏   update Table
23
24
                  @on-select-all="sall"
                  @on-sort-change="sortChange">
e7e8c8ff   梁灏   update Table
25
26
27
              <!--<div slot="header">表格标题</div>-->
              <!--<div slot="footer">表格标题</div>-->
          </i-table>
0d136465   梁灏   update Table
28
          <br>
97edb2eb   梁灏   update Table
29
          <i-button @click="showChildren">显示子节点</i-button>
0d136465   梁灏   update Table
30
          <!--<i-table size="small" border stripe :columns="columns" :data="data"></i-table>-->
2cb8a6d9   梁灏   commit Table comp...
31
32
33
34
35
36
37
38
39
40
41
      </div>
  </template>
  <script>
      export default {
          props: {
          
          },
          data () {
              return {
                  columns: [
                      {
0d136465   梁灏   update Table
42
                          type: 'selection',
5d0499ce   梁灏   update Table
43
44
                          width: 90,
  //                        fixed: 'left',
642299b9   梁灏   update Table
45
                          align: 'center'
0d136465   梁灏   update Table
46
47
                      },
                      {
3ef4dfb9   梁灏   update Table
48
49
50
51
                          type: 'index',
                          width: 50
                      },
                      {
2cb8a6d9   梁灏   commit Table comp...
52
                          title: '姓名',
744eb0af   梁灏   update Table comp...
53
                          key: 'name',
0d136465   梁灏   update Table
54
                          align: 'left',
5d0499ce   梁灏   update Table
55
  //                        fixed: 'left',
35ad3764   梁灏   update Table
56
                          sortable: true,
642299b9   梁灏   update Table
57
58
59
                          width: 100,
                          filters: [
                              {
cb31ede0   梁灏   update Table
60
                                  label: '两个字',
45e7ed7e   梁灏   update Table
61
                                  value: 1
642299b9   梁灏   update Table
62
63
                              },
                              {
cb31ede0   梁灏   update Table
64
                                  label: '三个字',
45e7ed7e   梁灏   update Table
65
                                  value: 2
642299b9   梁灏   update Table
66
67
                              }
                          ],
45e7ed7e   梁灏   update Table
68
69
70
                          filterMultiple: false,
                          filterMethod (value, row) {
                              if (value === 1) {
cb31ede0   梁灏   update Table
71
                                  return row.name.length == 2;
45e7ed7e   梁灏   update Table
72
                              } else if (value === 2) {
cb31ede0   梁灏   update Table
73
                                  return row.name.length == 3;
45e7ed7e   梁灏   update Table
74
75
                              }
                          }
642299b9   梁灏   update Table
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
                      },
                      {
                          title: '标签',
                          key: 'tag',
                          width: 100,
                          filters: [
                              {
                                  label: '家',
                                  value: 'home'
                              },
                              {
                                  label: '公司',
                                  value: 'company'
                              }
                          ],
adaeca88   梁灏   update Table
91
92
93
                          filterMethod (value, row) {
                              return row.tag === value;
                          },
5d0499ce   梁灏   update Table
94
  //                        filteredValue: ['company'],
642299b9   梁灏   update Table
95
                          render (row) {
adaeca88   梁灏   update Table
96
                              const type = `${row.tag}` === 'home' ? 'green' : 'red';
642299b9   梁灏   update Table
97
98
                              return `<tag color="${type}">${row.tag}</tag>`;
                          }
2cb8a6d9   梁灏   commit Table comp...
99
100
101
102
                      },
                      {
                          title: '年龄',
                          key: 'age',
0d136465   梁灏   update Table
103
                          align: 'right',
3ef4dfb9   梁灏   update Table
104
  //                        fixed: 'left',
9f853e3e   梁灏   update Table
105
                          sortable: true,
642299b9   梁灏   update Table
106
107
108
                          width: 100,
                          filters: [
                              {
cb31ede0   梁灏   update Table
109
110
                                  label: '大于25岁',
                                  value: 1
642299b9   梁灏   update Table
111
112
                              },
                              {
cb31ede0   梁灏   update Table
113
114
                                  label: '小于25岁',
                                  value: 2
642299b9   梁灏   update Table
115
116
                              }
                          ],
cb31ede0   梁灏   update Table
117
118
119
120
121
122
123
124
                          filterMultiple: false,
                          filterMethod (value, row) {
                              if (value === 1) {
                                  return row.age >= 25;
                              } else if (value === 2) {
                                  return row.age < 25;
                              }
                          }
2cb8a6d9   梁灏   commit Table comp...
125
126
127
128
129
130
131
  //                        render (row) {
  //                            return `<i-button>${row.age}</i-button>`
  //                        }
                      },
                      {
                          title: '地址',
                          key: 'address',
0d136465   梁灏   update Table
132
                          align: 'center',
5d0499ce   梁灏   update Table
133
  //                        fixed: 'left',
a3547c1b   梁灏   update Table
134
                          width: 100,
2cb8a6d9   梁灏   commit Table comp...
135
136
137
138
139
140
141
142
143
144
145
  //                        render (row, column, index) {
  //                            if (row.edit) {
  //                                return `<i-input :value.sync="data[${index}].name"></i-input>`;
  //                            } else {
  //                                return `<Tooltip content="${row.address}"><i-button @click="show(${index})">${row.name}</i-button></Tooltip>`;
  //                            }
  //                        }
                      },
                      {
                          title: '操作',
                          key: 'action',
5d0499ce   梁灏   update Table
146
147
  //                        fixed: 'right',
                          width: 250,
2cb8a6d9   梁灏   commit Table comp...
148
                          render (row, column, index) {
45e7ed7e   梁灏   update Table
149
                              return `<i-button @click="edit(${index})">${row.name}${index}</i-button>`;
5d0499ce   梁灏   update Table
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
  //                            return `<a href="#">${row.name}</a>`;
                          },
                          filters: [
                              {
                                  label: '两个字',
                                  value: 1
                              },
                              {
                                  label: '三个字',
                                  value: 2
                              }
                          ],
                          filterMultiple: false,
                          filterMethod (value, row) {
                              if (value === 1) {
                                  return row.name.length == 2;
                              } else if (value === 2) {
                                  return row.name.length == 3;
                              }
2cb8a6d9   梁灏   commit Table comp...
169
170
171
172
173
                          }
                      }
                  ],
                  data: [
                      {
5d0499ce   梁灏   update Table
174
                          name: '梁灏梁灏梁灏梁灏梁灏梁灏梁灏',
2cb8a6d9   梁灏   commit Table comp...
175
176
                          age: 25,
                          address: '北京市朝阳区',
642299b9   梁灏   update Table
177
                          edit: false,
45e7ed7e   梁灏   update Table
178
179
                          tag: 'home',
                          action: 1
2cb8a6d9   梁灏   commit Table comp...
180
181
182
                      },
                      {
                          name: '段模',
741b987a   梁灏   update Table
183
                          age: 21,
2cb8a6d9   梁灏   commit Table comp...
184
                          address: '北京市海淀区',
642299b9   梁灏   update Table
185
                          edit: false,
45e7ed7e   梁灏   update Table
186
187
                          tag: 'company',
                          action: 2
2cb8a6d9   梁灏   commit Table comp...
188
189
190
191
192
                      },
                      {
                          name: '刘天娇',
                          age: 27,
                          address: '北京市东城区',
642299b9   梁灏   update Table
193
                          edit: false,
45e7ed7e   梁灏   update Table
194
195
                          tag: 'company',
                          action: 3
0d136465   梁灏   update Table
196
197
198
                      },
                      {
                          name: '胡国伟',
741b987a   梁灏   update Table
199
                          age: 22,
0d136465   梁灏   update Table
200
                          address: '北京市西城区',
642299b9   梁灏   update Table
201
                          edit: false,
45e7ed7e   梁灏   update Table
202
203
                          tag: 'home',
                          action: 4
2cb8a6d9   梁灏   commit Table comp...
204
                      }
e7e8c8ff   梁灏   update Table
205
206
                  ],
                  height: 200
2cb8a6d9   梁灏   commit Table comp...
207
208
209
210
211
212
213
214
215
216
              }
          },
          computed: {
          
          },
          methods: {
              show (name) {
                  this.$Message.info(name);
              },
              edit (index) {
0d136465   梁灏   update Table
217
218
219
220
  //                this.data[index].edit = true;
                  this.$Message.info(this.data[index].name);
              },
              current (newData, oldData) {
6c99b9fe   梁灏   update Table
221
222
  //                console.log(newData);
  //                console.log(oldData);
0d136465   梁灏   update Table
223
224
              },
              select (a,b){
d3dfdb26   梁灏   update Table
225
  //                console.log(a);
741b987a   梁灏   update Table
226
  //                console.log(b);
0d136465   梁灏   update Table
227
228
              },
              schange (a) {
741b987a   梁灏   update Table
229
  //                console.log(a)
0d136465   梁灏   update Table
230
231
              },
              sall (a) {
6c99b9fe   梁灏   update Table
232
                  console.log(a)
e7e8c8ff   梁灏   update Table
233
234
235
236
237
238
239
              },
              rowClsName (row, index) {
                  if (index == 1) {
                      return 'row-success';
                  } else {
                      return '';
                  }
35ad3764   梁灏   update Table
240
241
242
              },
              sortChange (data) {
                  console.log(data)
97edb2eb   梁灏   update Table
243
244
245
              },
              showChildren () {
                  console.log(this.$children)
2cb8a6d9   梁灏   commit Table comp...
246
247
248
249
              }
          },
          ready () {
              setTimeout(() => {
340681ab   梁灏   update Table
250
251
  //                this.columns[3].width = 300;
  //                this.columns[2].width = 150;
7f34c510   梁灏   update Table
252
  //                return;
e7e8c8ff   梁灏   update Table
253
  //                this.height = 150;
a3547c1b   梁灏   update Table
254
255
256
257
258
259
  //                this.data.push({
  //                    name: '刘天娇2',
  //                    age: 272,
  //                    address: '北京市东城区2',
  //                    edit: false
  //                });
97edb2eb   梁灏   update Table
260
  //                this.data.splice(0, 1);
6c99b9fe   梁灏   update Table
261
  //                this.columns.splice(2,1)
39311a50   梁灏   update Table
262
263
264
265
266
267
268
269
  //                this.data.push({
  //                    name: '梁灏2',
  //                    age: 25,
  //                    address: '北京市朝阳区',
  //                    edit: false,
  //                    tag: 'home',
  //                    action: 1
  //                })
9f853e3e   梁灏   update Table
270
              }, 3000);
2cb8a6d9   梁灏   commit Table comp...
271
272
273
          }
      }
  </script>