请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

hi老师,有没有一个可以展示本地时间的第三方API介绍?

Hi 老师,
我有个需求:
做一个能够获取用户手机时间的功能,此功能一般用在比方说用户留言,有留下留言的时间记录,比方说5秒前,10分钟,5天前,1小时前,1年前等等。
我网上查了很多,最终选择了moment .js ,因为我没用过,我担心用得不对。你可以帮我看下代码吗?非常感谢!!我主要担心就是,这个时间不会变,比方说,我留言的时候,是1秒前,但是我10分钟后再看会变成10分钟前。

import React,{useEffect,useState} from 'react';
import { StyleSheet, View,Text } from 'react-native';
import moment from 'moment';

function TryTime(props) {
    const time = moment().startOf('minute').fromNow();

    return (
        <View style={styles.container}>
            <Text>{time}</Text>
        </View>
    );
}


const styles = StyleSheet.create({
    container : {
        flex : 1,
        justifyContent : 'center',
        alignItems : 'center',
    }
})
export default TryTime;

如果您有觉得有更好用,适合的API也可以推荐给我哈。谢谢你!

正在回答

1回答

你说的十分钟之后在看要分两种情况:

  • 离开这个页面,10分钟后再次打开,这个使用会触发API获取最新的时间

  • 停留在这个页面不同,10分钟后再次打开,对于这个情况可以做个定时器,定时调用API获取下最新时间;

另外,通过moment获取留言相对现在时间的间隔,需要以留言的时间为基准获取间隔时间,从你的使用上不见你有传递留言的时间啊,可以看下moment的API,看如何将你的留言时间传递进去。

2 回复 有任何疑惑可以回复我~
  • 提问者 慕尼黑0536602 #1
    你好老师,对的,应该是要有个时间差,就像咱们微信评价一样,10分钟后看会显示10分钟前,我一开始想着是否用useEffect 获取用户留下的时间,然后每次显示都是现在打开的时间减去第一次留言的时间。好的,我再仔细看下moment的API谢谢老师!
    回复 有任何疑惑可以回复我~ 2021-04-27 14:37:07
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信