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

来源:1-2 课程导学

慕尼黑0536602

2021-04-26

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回答

CrazyCodeBoy

2021-04-27

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

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

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

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

2
1
慕尼黑0536602
你好老师,对的,应该是要有个时间差,就像咱们微信评价一样,10分钟后看会显示10分钟前,我一开始想着是否用useEffect 获取用户留下的时间,然后每次显示都是现在打开的时间减去第一次留言的时间。好的,我再仔细看下moment的API谢谢老师!
2021-04-27
共1条回复

RN入门到进阶,打造高质量上线App

解锁React Native开发应用新姿势,React Native新版本热门技术

3144 学习 · 3241 问题

查看课程