List.vue 2.8 KB
Newer Older
aaronchen2k2k's avatar
aaronchen2k2k 已提交
1 2
<template>
  <div>
aaronchen2k2k's avatar
aaronchen2k2k 已提交
3 4 5 6 7 8 9 10
    <div class="head">
      <div class="title">测试数据列表</div>
      <div class="buttons">
        <a-button type="primary" @click="create()">新建</a-button>
      </div>
    </div>

    <a-table :columns="columns" :data-source="defs" rowKey="id">
aaronchen2k2k's avatar
aaronchen2k2k 已提交
11
      <a slot="name" slot-scope="text">{{ text }}</a>
aaronchen2k2k's avatar
aaronchen2k2k 已提交
12 13 14 15 16

      <span slot="customTitle">名称</span>

      <span slot="action" slot-scope="record">
        <a @click="edit(record)">编辑</a> |
aaronchen2k2k's avatar
aaronchen2k2k 已提交
17 18 19 20 21 22 23 24 25 26
        <a @click="design(record)">设计</a> |

        <a-popconfirm
            title="确认删除?"
            ok-text="是"
            cancel-text="否"
            @confirm="remove(record)"
          >
          <a href="#">删除</a>
        </a-popconfirm>
aaronchen2k2k's avatar
aaronchen2k2k 已提交
27
      </span>
aaronchen2k2k's avatar
aaronchen2k2k 已提交
28
    </a-table>
aaronchen2k2k's avatar
aaronchen2k2k 已提交
29 30 31

    <div class="full-screen-modal">
      <def-design-component
aaronchen2k2k's avatar
aaronchen2k2k 已提交
32
          ref="designPage"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
33 34
          :visible="designVisible"
          :model="designModel"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
35
          :time="time"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
36 37 38 39 40
          @ok="handleDesignOk"
          @cancel="handleDesignCancel" >
      </def-design-component>
    </div>

aaronchen2k2k's avatar
aaronchen2k2k 已提交
41 42 43 44 45
  </div>
</template>

<script>

aaronchen2k2k's avatar
aaronchen2k2k 已提交
46
import { listDef, removeDef } from "../../../api/manage";
aaronchen2k2k's avatar
aaronchen2k2k 已提交
47
import { DefDesignComponent } from '../../../components'
aaronchen2k2k's avatar
aaronchen2k2k 已提交
48

aaronchen2k2k's avatar
aaronchen2k2k 已提交
49 50 51 52 53 54 55
const columns = [
  {
    dataIndex: 'name',
    slots: { title: 'customTitle' },
    scopedSlots: { customRender: 'name' },
  },
  {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
56 57
    title: '路径',
    dataIndex: 'path',
aaronchen2k2k's avatar
aaronchen2k2k 已提交
58 59
  },
  {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
60
    title: '操作',
aaronchen2k2k's avatar
aaronchen2k2k 已提交
61 62 63 64 65
    key: 'action',
    scopedSlots: { customRender: 'action' },
  },
];

aaronchen2k2k's avatar
aaronchen2k2k 已提交
66 67
export default {
  name: 'Mine',
aaronchen2k2k's avatar
aaronchen2k2k 已提交
68
  components: {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
69
    DefDesignComponent
aaronchen2k2k's avatar
aaronchen2k2k 已提交
70
  },
aaronchen2k2k's avatar
aaronchen2k2k 已提交
71 72 73
  data() {
    return {
      defs: [],
aaronchen2k2k's avatar
aaronchen2k2k 已提交
74 75 76 77
      columns,

      designVisible: false,
      designModel: {},
aaronchen2k2k's avatar
aaronchen2k2k 已提交
78
      time: 0,
aaronchen2k2k's avatar
aaronchen2k2k 已提交
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
    };
  },
  computed: {

  },
  created () {
    console.log('===')
    listDef().then(res => {
      console.log('listDefs', res)
      this.defs = res.data
    })
  },
  mounted () {
  },
  methods: {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
94 95 96
    create() {
      this.$router.push({path: '/data/mine/edit/0'});
    },
aaronchen2k2k's avatar
aaronchen2k2k 已提交
97 98
    edit(record) {
      console.log(record)
aaronchen2k2k's avatar
aaronchen2k2k 已提交
99
      this.$router.push({path: `/data/mine/edit/${record.id}`});
aaronchen2k2k's avatar
aaronchen2k2k 已提交
100
    },
aaronchen2k2k's avatar
aaronchen2k2k 已提交
101
    design(record) {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
102
      this.time = Date.now() // trigger data refresh
aaronchen2k2k's avatar
aaronchen2k2k 已提交
103
      console.log(record)
aaronchen2k2k's avatar
aaronchen2k2k 已提交
104
      this.designVisible = true
aaronchen2k2k's avatar
aaronchen2k2k 已提交
105
      this.designModel = record
aaronchen2k2k's avatar
aaronchen2k2k 已提交
106
    },
aaronchen2k2k's avatar
aaronchen2k2k 已提交
107 108
    remove(record) {
      console.log(record)
aaronchen2k2k's avatar
aaronchen2k2k 已提交
109 110 111 112 113 114 115 116 117
      removeDef(record.id).then(json => {
        console.log('removeDef', json)
        if (json.code == 1) {
          listDef().then(res => {
            console.log('listDefs', res)
            this.defs = res.data
          })
        }
      })
aaronchen2k2k's avatar
aaronchen2k2k 已提交
118 119 120 121 122 123 124 125 126 127
    },

    handleDesignOk() {
      console.log('handleDesignOk')
      this.designVisible = false
    },
    handleDesignCancel() {
      console.log('handleDesignCancel')
      this.designVisible = false
    },
aaronchen2k2k's avatar
aaronchen2k2k 已提交
128 129 130 131 132 133 134
  }
}
</script>

<style scoped>

</style>