/*! For license information please see 5325.a1f4bc37.js.LICENSE.txt */ (self.webpackChunk=self.webpackChunk||[]).push([["5325"],{36021:function(n,t,s){"use strict";s.r(t);var d=s("80681");let a=["innerHTML"];t.default={setup:()=>({html:""}),render:()=>((0,d.wg)(),(0,d.iD)("div",{class:"van-doc-markdown-body",innerHTML:'

Coupon \u4F18\u60E0\u5238\u9009\u62E9\u5668

\n

\u4ECB\u7ECD

\n

\u7528\u4E8E\u4F18\u60E0\u5238\u7684\u5151\u6362\u548C\u9009\u62E9\u3002

\n

\u5F15\u5165

\n

\u901A\u8FC7\u4EE5\u4E0B\u65B9\u5F0F\u6765\u5168\u5C40\u6CE8\u518C\u7EC4\u4EF6\uFF0C\u66F4\u591A\u6CE8\u518C\u65B9\u5F0F\u8BF7\u53C2\u8003\u7EC4\u4EF6\u6CE8\u518C\u3002

\n
import { createApp } from 'vue';\nimport { CouponCell, CouponList } from 'vant';\n\nconst app = createApp();\napp.use(CouponCell);\napp.use(CouponList);\n
\n

\u4EE3\u7801\u6F14\u793A

\n

\u57FA\u7840\u7528\u6CD5

\n
<!-- \u4F18\u60E0\u5238\u5355\u5143\u683C -->\n<van-coupon-cell\n  :coupons="coupons"\n  :chosen-coupon="chosenCoupon"\n  @click="showList = true"\n/>\n<!-- \u4F18\u60E0\u5238\u5217\u8868 -->\n<van-popup\n  v-model:show="showList"\n  round\n  position="bottom"\n  style="height: 90%; padding-top: 4px;"\n>\n  <van-coupon-list\n    :coupons="coupons"\n    :chosen-coupon="chosenCoupon"\n    :disabled-coupons="disabledCoupons"\n    @change="onChange"\n    @exchange="onExchange"\n  />\n</van-popup>\n
\n
import { ref } from 'vue';\n\nexport default {\n  setup() {\n    const coupon = {\n      available: 1,\n      condition: '\u65E0\u95E8\u69DB\\n\u6700\u591A\u4F18\u60E012\u5143',\n      reason: '',\n      value: 150,\n      name: '\u4F18\u60E0\u5238\u540D\u79F0',\n      startAt: 1489104000,\n      endAt: 1514592000,\n      valueDesc: '1.5',\n      unitDesc: '\u5143',\n    };\n\n    const coupons = ref([coupon]);\n    const showList = ref(false);\n    const chosenCoupon = ref(-1);\n\n    const onChange = (index) => {\n      showList.value = false;\n      chosenCoupon.value = index;\n    };\n    const onExchange = (code) => {\n      coupons.value.push(coupon);\n    };\n\n    return {\n      coupons,\n      showList,\n      onChange,\n      onExchange,\n      chosenCoupon,\n      disabledCoupons: [coupon],\n    };\n  },\n};\n
\n

API

\n

CouponCell Props

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u53C2\u6570\u8BF4\u660E\u7C7B\u578B\u9ED8\u8BA4\u503C
title\u5355\u5143\u683C\u6807\u9898string\u4F18\u60E0\u5238
chosen-coupon\u5F53\u524D\u9009\u4E2D\u4F18\u60E0\u5238\u7684\u7D22\u5F15number | number[]-1
coupons\u53EF\u7528\u4F18\u60E0\u5238\u5217\u8868Coupon[][]
editable\u80FD\u5426\u5207\u6362\u4F18\u60E0\u5238booleantrue
border\u662F\u5426\u663E\u793A\u5185\u8FB9\u6846booleantrue
currency\u8D27\u5E01\u7B26\u53F7string\xa5
\n

CouponList Props

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u53C2\u6570\u8BF4\u660E\u7C7B\u578B\u9ED8\u8BA4\u503C
v-model:code\u5F53\u524D\u8F93\u5165\u7684\u5151\u6362\u7801string-
chosen-coupon\u5F53\u524D\u9009\u4E2D\u4F18\u60E0\u5238\u7684\u7D22\u5F15,\u652F\u6301\u591A\u9009\uFF08\u7C7B\u578B\u4E3A []\uFF09number | number[]-1
coupons\u53EF\u7528\u4F18\u60E0\u5238\u5217\u8868CouponInfo[][]
disabled-coupons\u4E0D\u53EF\u7528\u4F18\u60E0\u5238\u5217\u8868CouponInfo[][]
enabled-title\u53EF\u7528\u4F18\u60E0\u5238\u5217\u8868\u6807\u9898string\u53EF\u4F7F\u7528\u4F18\u60E0\u5238
disabled-title\u4E0D\u53EF\u7528\u4F18\u60E0\u5238\u5217\u8868\u6807\u9898string\u4E0D\u53EF\u4F7F\u7528\u4F18\u60E0\u5238
exchange-button-text\u5151\u6362\u6309\u94AE\u6587\u5B57string\u5151\u6362
exchange-button-loading\u662F\u5426\u663E\u793A\u5151\u6362\u6309\u94AE\u52A0\u8F7D\u52A8\u753Bbooleanfalse
exchange-button-disabled\u662F\u5426\u7981\u7528\u5151\u6362\u6309\u94AEbooleanfalse
exchange-min-length\u5151\u6362\u7801\u6700\u5C0F\u957F\u5EA6number1
displayed-coupon-index\u6EDA\u52A8\u81F3\u7279\u5B9A\u4F18\u60E0\u5238\u4F4D\u7F6Enumber-
show-close-button\u662F\u5426\u663E\u793A\u5217\u8868\u5E95\u90E8\u6309\u94AEbooleantrue
close-button-text\u5217\u8868\u5E95\u90E8\u6309\u94AE\u6587\u5B57string\u4E0D\u4F7F\u7528\u4F18\u60E0
input-placeholder\u8F93\u5165\u6846\u6587\u5B57\u63D0\u793Astring\u8BF7\u8F93\u5165\u4F18\u60E0\u7801
show-exchange-bar\u662F\u5426\u5C55\u793A\u5151\u6362\u680Fbooleantrue
currency\u8D27\u5E01\u7B26\u53F7string\xa5
empty-image\u5217\u8868\u4E3A\u7A7A\u65F6\u7684\u5360\u4F4D\u56FEstring-
show-count\u662F\u5426\u5C55\u793A\u53EF\u7528 / \u4E0D\u53EF\u7528\u6570\u91CFbooleantrue
\n

CouponList Events

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u4E8B\u4EF6\u540D\u8BF4\u660E\u56DE\u8C03\u53C2\u6570
change\u4F18\u60E0\u5238\u5207\u6362\u56DE\u8C03index, \u9009\u4E2D\u4F18\u60E0\u5238\u7684\u7D22\u5F15
exchange\u5151\u6362\u4F18\u60E0\u5238\u56DE\u8C03code, \u5151\u6362\u7801
\n

CouponList Slots

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u540D\u79F0\u8BF4\u660E
list-footer\u4F18\u60E0\u5238\u5217\u8868\u5E95\u90E8
disabled-list-footer\u4E0D\u53EF\u7528\u4F18\u60E0\u5238\u5217\u8868\u5E95\u90E8
list-button\u81EA\u5B9A\u4E49\u5E95\u90E8\u6309\u94AE
\n

CouponInfo \u6570\u636E\u7ED3\u6784

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u952E\u540D\u8BF4\u660E\u7C7B\u578B
id\u4F18\u60E0\u5238 idstring
name\u4F18\u60E0\u5238\u540D\u79F0string
condition\u6EE1\u51CF\u6761\u4EF6string
startAt\u5361\u6709\u6548\u5F00\u59CB\u65F6\u95F4 (\u65F6\u95F4\u6233, \u5355\u4F4D\u79D2)number
endAt\u5361\u5931\u6548\u65E5\u671F (\u65F6\u95F4\u6233, \u5355\u4F4D\u79D2)number
description\u63CF\u8FF0\u4FE1\u606F\uFF0C\u4F18\u60E0\u5238\u53EF\u7528\u65F6\u5C55\u793Astring
reason\u4E0D\u53EF\u7528\u539F\u56E0\uFF0C\u4F18\u60E0\u5238\u4E0D\u53EF\u7528\u65F6\u5C55\u793Astring
value\u6298\u6263\u5238\u4F18\u60E0\u91D1\u989D\uFF0C\u5355\u4F4D\u5206number
valueDesc\u6298\u6263\u5238\u4F18\u60E0\u91D1\u989D\u6587\u6848string
unitDesc\u5355\u4F4D\u6587\u6848string
\n

\u7C7B\u578B\u5B9A\u4E49

\n

\u7EC4\u4EF6\u5BFC\u51FA\u4EE5\u4E0B\u7C7B\u578B\u5B9A\u4E49\uFF1A

\n
import type { CouponCellProps, CouponListProps, CouponInfo } from 'vant';\n
\n

\u4E3B\u9898\u5B9A\u5236

\n

\u6837\u5F0F\u53D8\u91CF

\n

\u7EC4\u4EF6\u63D0\u4F9B\u4E86\u4E0B\u5217 CSS \u53D8\u91CF\uFF0C\u53EF\u7528\u4E8E\u81EA\u5B9A\u4E49\u6837\u5F0F\uFF0C\u4F7F\u7528\u65B9\u6CD5\u8BF7\u53C2\u8003 ConfigProvider \u7EC4\u4EF6\u3002

\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
\u540D\u79F0\u9ED8\u8BA4\u503C\u63CF\u8FF0
--van-coupon-margin0 var(--van-padding-sm) var(--van-padding-sm)-
--van-coupon-content-height84px-
--van-coupon-content-padding14px 0-
--van-coupon-content-text-colorvar(--van-text-color)-
--van-coupon-backgroundvar(--van-background-2)-
--van-coupon-active-backgroundvar(--van-active-color)-
--van-coupon-radiusvar(--van-radius-lg)-
--van-coupon-shadow0 0 4px rgba(0, 0, 0, 0.1)-
--van-coupon-head-width96px-
--van-coupon-amount-colorvar(--van-danger-color)-
--van-coupon-amount-font-size30px-
--van-coupon-currency-font-size40%-
--van-coupon-name-font-sizevar(--van-font-size-md)-
--van-coupon-disabled-text-colorvar(--van-text-color-2)-
--van-coupon-description-paddingvar(--van-padding-xs) var(--van-padding-md)-
--van-coupon-description-border-colorvar(--van-border-color)-
--van-coupon-checkbox-colorvar(--van-danger-color)-
--van-coupon-list-backgroundvar(--van-background)-
--van-coupon-list-field-padding5px 0 5px var(--van-padding-md)-
--van-coupon-list-exchange-button-height32px-
--van-coupon-list-close-button-height40px-
--van-coupon-list-empty-tip-colorvar(--van-text-color-2)-
--van-coupon-list-empty-tip-font-sizevar(--van-font-size-md)-
--van-coupon-list-empty-tip-line-heightvar(--van-line-height-md)-
--van-coupon-cell-selected-text-colorvar(--van-text-color)-
\n
'},null,8,a))}}}]);