Blame view

examples/routers/table.vue 4.98 KB
2cb8a6d9   梁灏   commit Table comp...
1
  <template>
a6fc9438   梁灏   fixed #461
2
3
4
5
6
7
8
9
      <div>
          <Table :context="self" :data="tableData1" :columns="tableColumns1" stripe></Table>
          <div style="margin: 10px;overflow: hidden">
              <div style="float: right;">
                  <Page :total="100" :current="1" @on-change="changePage"></Page>
              </div>
          </div>
      </div>
2cb8a6d9   梁灏   commit Table comp...
10
11
12
  </template>
  <script>
      export default {
2cb8a6d9   梁灏   commit Table comp...
13
14
          data () {
              return {
99d0429e   梁灏   update Button & T...
15
                  self: this,
a6fc9438   梁灏   fixed #461
16
17
                  tableData1: this.mockTableData1(),
                  tableColumns1: [
2404849c   leonine   合并原作者更新
18
                      {
a6fc9438   梁灏   fixed #461
19
20
                          title: '名称',
                          key: 'name'
b89a982e   梁灏   fixed #205
21
22
                      },
                      {
a6fc9438   梁灏   fixed #461
23
24
25
26
27
28
29
                          title: '状态',
                          key: 'status',
                          render (row) {
                              const color = row.status == 1 ? 'blue' : row.status == 2 ? 'green' : 'red';
                              const text = row.status == 1 ? '构建中' : row.status == 2 ? '构建完成' : '构建失败';
                              return `<tag type="dot" color="${color}">${text}</tag>`;
                          }
99d0429e   梁灏   update Button & T...
30
31
                      },
                      {
a6fc9438   梁灏   fixed #461
32
33
                          title: '画像内容',
                          key: 'portrayal',
99d0429e   梁灏   update Button & T...
34
                          render (row, column, index) {
a6fc9438   梁灏   fixed #461
35
36
37
38
39
40
                              return `<Poptip trigger="hover" title="${row.portrayal.length}个画像" placement="bottom">
                                          <tag>${row.portrayal.length}</tag>
                                          <div slot="content">
                                              <ul><li v-for="item in tableData1[${index}].portrayal" style="text-align: center;padding: 4px">{{ item }}</li></ul>
                                          </div>
                                      </Poptip>`;
b89a982e   梁灏   fixed #205
41
                          }
3c38e4f7   梁灏   update Table cell
42
                      },
891f61d8   梁灏   fixed #577
43
                      {
a6fc9438   梁灏   fixed #461
44
45
46
47
48
49
50
51
52
53
                          title: '选定人群数',
                          key: 'people',
                          render (row, column, index) {
                              return `<Poptip trigger="hover" title="${row.people.length}个客群" placement="bottom">
                                          <tag>${row.people.length}</tag>
                                          <div slot="content">
                                              <ul><li v-for="item in tableData1[${index}].people" style="text-align: center;padding: 4px">{{ item.n }}:{{ item.c }}人</li></ul>
                                          </div>
                                      </Poptip>`;
                          }
891f61d8   梁灏   fixed #577
54
55
                      },
                      {
a6fc9438   梁灏   fixed #461
56
57
58
59
60
                          title: '取样时段',
                          key: 'time',
                          render (row) {
                              return `近${row.time}天`
                          }
891f61d8   梁灏   fixed #577
61
62
                      },
                      {
a6fc9438   梁灏   fixed #461
63
64
65
66
67
                          title: '更新时间',
                          key: 'update',
                          render (row, column, index) {
                              return `{{ formatDate(tableData1[${index}].update) }}`;
                          }
891f61d8   梁灏   fixed #577
68
                      }
d16dce64   梁灏   fixed #193
69
                  ]
2cb8a6d9   梁灏   commit Table comp...
70
              }
99d0429e   梁灏   update Button & T...
71
          },
99d0429e   梁灏   update Button & T...
72
          methods: {
a6fc9438   梁灏   fixed #461
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
              mockTableData1 () {
                  let data = [];
                  for (let i = 0; i < 10; i++) {
                      data.push({
                          name: '商圈' + Math.floor(Math.random () * 100 + 1),
                          status: Math.floor(Math.random () * 3 + 1),
                          portrayal: ['城市渗透', '人群迁移', '消费指数', '生活指数', '娱乐指数'],
                          people: [
                              {
                                  n: '客群' + Math.floor(Math.random () * 100 + 1),
                                  c: Math.floor(Math.random () * 1000000 + 100000)
                              },
                              {
                                  n: '客群' + Math.floor(Math.random () * 100 + 1),
                                  c: Math.floor(Math.random () * 1000000 + 100000)
                              },
                              {
                                  n: '客群' + Math.floor(Math.random () * 100 + 1),
                                  c: Math.floor(Math.random () * 1000000 + 100000)
                              }
                          ],
                          time: Math.floor(Math.random () * 7 + 1),
                          update: new Date()
                      })
                  }
                  return data;
              },
              formatDate (date) {
                  const y = date.getFullYear();
                  let m = date.getMonth() + 1;
                  m = m < 10 ? '0' + m : m;
                  let d = date.getDate();
                  d = d < 10 ? ('0' + d) : d;
                  return y + '-' + m + '-' + d;
99d0429e   梁灏   update Button & T...
107
              },
a6fc9438   梁灏   fixed #461
108
109
110
              changePage () {
                  // 这里直接更改了模拟的数据,真实使用场景应该从服务端获取数据
                  this.tableData1 = this.mockTableData1();
99d0429e   梁灏   update Button & T...
111
              }
2cb8a6d9   梁灏   commit Table comp...
112
113
          }
      }
d0e206c5   梁灏   Table add content...
114
  </script>