remind.js 1.27 KB
import create from 'dd-store'
import exampleStore from '/stores/exampleStore'
import { throttle } from './../../utils/utils.js'

create.Page({
  store: exampleStore,
  useAll: true,
  data: {
    remindList: [
      { time: 0, text: '开始时' },
      { time: 5, text: '5分钟前' },
      { time: 15, text: '15分钟前' },
      { time: 30, text: '30分钟前' },
      { time: 60, text: '1小时前' },
      { time: 1440, text: '1天前' },
      { time: 2880, text: '2天前' },
      { time: 10080, text: '1周前' }
    ],
    saveTime: []
  },
  onLoad() {
    dd.setNavigationBar({
      title: '会前提醒'
    })
    this.setData({
      saveTime: [...this.store.data.aheadTimes]
    })
  },
  selectTimes(event) {
    if (this.data.saveTime.includes(event.target.dataset.item.time)) {
      this.data.saveTime.forEach((item, index) => {
        if (item == event.target.dataset.item.time) {
          this.data.saveTime.splice(index, 1)
        }
        return
      })
    }
    else {
      this.data.saveTime.push(event.target.dataset.item.time)
    }
    this.setData({
      saveTime: this.data.saveTime
    })
  },
  save: throttle(function () {
    this.store.data.aheadTimes = this.data.saveTime
    this.update()
    dd.navigateBack({
      delta: 1
    })
  }, 1000)
});