Skip to content

countdown

countdown(options): Function

倒计时函数

参数

NameTypeDescription
optionsCountdownConfig配置对象

返回值

Function

停止倒计时的函数

示例

ts
// 创建一个 60 秒的倒计时
const stopCountdown = countdown({
  duration: 60, // 持续时间为 60 秒
  precision: 'seconds', // 更新精度为秒
  onChange: offset => {
    console.log(`剩余时间:${offset.remainingSeconds} 秒`)
  },
  onEnd: () => {
    console.log('倒计时结束')
  },
})

// 10 秒后停止倒计时
setTimeout(() => {
  stopCountdown()
}, 10000) // 10 秒后停止倒计时

示例

ts
// 创建一个截止时间为 6 小时后的倒计时
const stopCountdown = countdown({
  endAt: dayjs().add(6, 'hour'), // 截止时间为当前时间后 6 小时
  precision: 'seconds', // 更新精度为秒
  onChange: offset => {
    console.log(`剩余时间:${offset.minutes} 分 ${offset.seconds} 秒`)
  },
  onEnd: () => {
    console.log('倒计时结束')
  },
})

示例

ts
// 创建一个持续时间为 5 秒的倒计时,更新精度为毫秒
const stopCountdown = countdown({
  duration: 5, // 持续时间为 5 秒
  precision: 'milliseconds', // 更新精度为毫秒
  onChange: offset => {
    console.log(
      `剩余时间:${offset.remainingSeconds} 秒 ${offset.milliseconds} 毫秒`
    )
  },
  onEnd: () => {
    console.log('倒计时结束')
  },
})

示例

ts
// 创建一个倒计时,当前时间为服务器时间,持续时间为 10 秒
const serverTime = xxx

const stopCountdown = countdown({
  duration: 10, // 持续时间为 10 秒
  now: serverTime, // 服务器时间
  precision: 'seconds', // 更新精度为秒
  onChange: offset => {
    console.log(`剩余时间:${offset.remainingSeconds} 秒`)
  },
  onEnd: () => {
    console.log('倒计时结束')
  },
})

源码

countdown.js