setTimeou定时函数出现了问题

我也是搜的资料,按照他的写法经过我的更改应该是每天21:50自动运行一次SAVE_AUTO保存数据,但是现在在多个时间运行,而且还有时候是没有在我设置的时间(21:50)运行。
PS:图为数据保存时间截图,7个相同的时间是一次保存。

 mounted() {
    this.created()
    },
  methods: {
    created: function () {
      //这里是定时器
      this.setScheduledTask(21, 50)
    },
     setScheduledTask (hour, minute) {
      let taskTime = new Date()
      taskTime.setHours(hour)
      taskTime.setMinutes(minute)
      let timeDiff = taskTime.getTime() - (new Date()).getTime()
      console.log('taskTime', timeDiff + ',' + (new Date()).getTime())
      timeDiff = timeDiff > 0 ? timeDiff : (timeDiff + 24 * 60 * 60 * 1000)
      console.log('taskTime', timeDiff)
      setTimeout(this.timer, timeDiff)
     },
     timer: function () {
    this.save_Auto();

     },

img

这样定时任务。那你的页面就不能关闭,一关闭就全没了