index.vue 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. <template>
  2. <CtTable
  3. class="mt-3"
  4. :items="items"
  5. :headers="headers"
  6. :loading="false"
  7. :elevation="0"
  8. :isTools="false"
  9. :showPage="true"
  10. :showSelect="false"
  11. :page-info="queryParams"
  12. itemKey="id"
  13. >
  14. <template #actions="{ item }">
  15. <v-btn color="primary" @click.stop="handleSelectAddress(item)" variant="text">选择收货地址</v-btn>
  16. </template>
  17. </CtTable>
  18. </template>
  19. <script setup>
  20. defineOptions({ name: 'mall-user-prize-index' })
  21. import { ref } from 'vue'
  22. const queryParams = ref({
  23. pageNo: 1,
  24. pageSize: 10,
  25. })
  26. const items = ref([
  27. {
  28. lotteryName: '抽奖活动1',
  29. name: '奖品1',
  30. address: '收货地址1',
  31. phone: '联系电话1',
  32. },
  33. {
  34. lotteryName: '抽奖活动2',
  35. name: '奖品2',
  36. address: '收货地址2',
  37. phone: '联系电话2',
  38. }
  39. ])
  40. const headers = [
  41. { title: '活动名称', key: 'lotteryName', sortable: false },
  42. { title: '奖品信息', key: 'name', sortable: false },
  43. { title: '收货地址', key: 'address', sortable: false },
  44. { title: '联系电话', key: 'phone', sortable: false },
  45. { title: '快递信息', key: 'deliveryInfo', sortable: false },
  46. { title: '操作', key: 'actions', sortable: false }
  47. ]
  48. const handleSelectAddress = (item) => {
  49. console.log(item, 'select')
  50. }
  51. </script>
  52. <style scoped lang="scss">
  53. </style>