语法可以直接在官网查看
后端返回的数据格式如下
[
{
"id": 1,
"btn_text": "+1",
"second": 0
},
{
"id": 2,
"btn_text": "+1",
"second": 0
}
...
]

之前约定second最多30s, 因此只需要使用秒不需要使用分钟或者是小时。
在此处使用van-count-down 组件来完成的。
<li v-for='item in getCountList' >
<template v-if="item.second && !item.secondFinish">
<van-count-down :time="item.second*1000" @finish="item.secondFinish = true">
<template #default="timeData">
<span class="block">{{ timeData.seconds }}S</span>
</template>
</van-count-down>
</template>
<template v-else>{{ item.btn_text }}</template>
</li>
测试时发现 倒计时25S、24S … 0S 之后并没有显示按钮文本“+1”而是显示60S继续开始倒计时
25S、24S … 0S、60S、59S、58S … 0S、60S …
后端返回的second数值为 325(不符合约定数值)
所有组倒计时结束才会走finish方法!只需要后端返回正确的秒数即可(<=30)。