我封装了一个倒计时的函数,但是用的时候报错是咋回事?

export function payCountdown(cm) {

  if (cm >= 0) {
    hour = Math.floor((cm / 1000 / 60 / 60) % 24)
    hour = hour.toString().length == 1 ? '0' + hour : hour
    minute = Math.floor((cm / 1000 / 60) % 60)
    minute = minute.toString().length == 1 ? '0' + minute : minute
    seconds = Math.floor((cm / 1000) % 60)
    seconds = seconds.toString().length == 1 ? '0' + seconds : seconds
    let _msThis = this
    setTimeout(function () {
      cm -= 1000
      _msThis.payCountdown(cm)
    }, 1000)
    return{ hour,minute,minute,seconds}
  }
}
export default payCountdown

我封装了一个倒计时的函数,但是用的时候报错是咋回事?
image.png
image.png

阅读 1.2k
1 个回答

你这hour、minute、second变量都还没声明就直接用了

let hour = Math.floor((cm / 1000 / 60 / 60) % 24)
hour = hour.toString().length == 1 ? '0' + hour : hour
let minute = Math.floor((cm / 1000 / 60) % 60)
minute = minute.toString().length == 1 ? '0' + minute : minute
let seconds = Math.floor((cm / 1000) % 60)
seconds = seconds.toString().length == 1 ? '0' + seconds : seconds
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题