所以我有5个变量
const currentTime = moment().unix()
const eventTime = moment().add(12, 'h').unix()
const diffTime = eventTime - currentTime
const duration = moment.duration(diffTime * 1000, 'milliseconds')
const interval = 1000
和我在componentDidMount
componentDidMount() {
setInterval(() => {
duration = moment.duration(duration.asMilliseconds() - interval, 'milliseconds')
let h = moment.duration(duration).hours()
let m = moment.duration(duration).minutes()
let s = moment.duration(duration).seconds()
console.log(h, m, s)
}, interval)
}
我需要的是,在我重新加载移动应用程序后,diffTime
变量将不会默认为12h,但它会在应用程序关闭后继续降低事件。因此,当我加载屏幕时,请在那里停留30分钟然后关闭应用程序2小时然后返回diffTime
将是9小时30分钟
感谢您提出任何建议
答案 0 :(得分:0)
使用缓存存储difftime并继续更新,如 -
storage.save({
key: 'difftimeKey', // Note: Do not use underscore("_") in key!
rawData: {
difftime
},
expires: 1000 * 3600 * 24 * 30 // ms - 30 days
});
答案 1 :(得分:0)
我看到至少有3种方法: