| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 | 
							- import ColResult from '@/components/col-result'
 
- import { useList } from '@/helpers/hooks'
 
- import request from '@/helpers/request'
 
- import { state } from '@/state'
 
- import { List } from 'vant'
 
- import { defineComponent, PropType } from 'vue'
 
- import styles from './index.module.less'
 
- import Item from './item'
 
- // 使用状态: EXPIRED(已失效) USABLE(可使用) USED(已使用)
 
- export default defineComponent({
 
-   name: 'coupon-list',
 
-   props: {
 
-     useState: {
 
-       type: String as PropType<'USABLE' | 'USED' | 'EXPIRED'>,
 
-       default: 'USABLE'
 
-     }
 
-   },
 
-   data() {
 
-     return {
 
-       list: [] as any,
 
-       listState: {
 
-         dataShow: true, // 判断是否有数据
 
-         loading: false,
 
-         finished: false
 
-       },
 
-       params: {
 
-         useState: this.useState,
 
-         page: 1,
 
-         rows: 20
 
-       }
 
-     }
 
-   },
 
-   mounted() {
 
-     this.getList()
 
-   },
 
-   methods: {
 
-     async getList() {
 
-       try {
 
-         const result = await useList(`${state.platformApi}/couponInfo/page`, {
 
-           params: this.params,
 
-           list: this.list,
 
-           ...this.listState
 
-         })
 
-         const { params, list, ...res } = result
 
-         this.params = params
 
-         this.list = list
 
-         this.listState = res
 
-       } catch {
 
-         //
 
-       }
 
-     }
 
-   },
 
-   render() {
 
-     return (
 
-       <>
 
-         {this.listState.dataShow ? (
 
-           <List
 
-             v-model:loading={this.listState.loading}
 
-             finished={this.listState.finished}
 
-             finishedText=" "
 
-             // 为了处理体验问题
 
-             class={[this.list.length > 0 && styles.list]}
 
-             onLoad={this.getList}
 
-             immediateCheck={false}
 
-           >
 
-             {this.list.map((item: any) => (
 
-               <Item item={item} />
 
-             ))}
 
-           </List>
 
-         ) : (
 
-           <ColResult btnStatus={false} classImgSize="SMALL" tips="暂无优惠券" />
 
-         )}
 
-       </>
 
-     )
 
-   }
 
- })
 
 
  |