【发布时间】:2021-02-17 11:40:44
【问题描述】:
我正在尝试计算持续时间(两个时刻之间的差异),例如,目前我正在处理一个 react native 项目,在该项目中我必须计算在屏幕/卡片上花费的时间。 所以现在我正在尝试这样计算花费的时间:
import moment from 'moment';
// lets say i have 3 states to note time
const [startTime, setStartTime] = useState(moment());
const [endTime, setEndTime] = useState(moment());
const [elapsedTime, setElapsedTime] = useState(Number);
// assume i have a bottomSheet, so whenever that bottom sheet goes up the timer starts and when it goes down to original position, timer stops and calculate difference/duration in minutes.
// so for the onOpenStart on onCloseEnd props of the bottomsheet, this is my function:
const start = () => {
setStartTime(moment());
}
const end = () => {
setEndTime(moment());
const et = moment.duration(endTime.diff(startTime)).asSeconds();
setElapsedTime(et);
console.log(elapsedTime) // if i try for 10 seconds it logs 34, or sometimes -6, it's just not right
}
我尝试使用new Date 方法,如果我尝试 10 秒,它会记录 34,有时是 -6,这是不对的,但无法成功...
任何帮助将不胜感激。
【问题讨论】:
标签: javascript react-native momentjs