我正在尝试构建一个聊天应用程序。在这里,当用户键入一条消息并单击Enter时,该文本将在服务器上发送,很快就会收到响应以及注释和时间(以毫秒为单位),即服务器系统时间。
当接收到服务器响应以显示评论以及时间时,它将显示初始时间为6分钟。但是,应该是“现在”。
我根据逻辑来决定时间:-
// server time is time received in milliseconds as a response from server.
public getTime(servertime): string {
const seconds = Math.floor(((+new Date()) - servertime) / 1000);
let interval = Math.floor(seconds / 31536000);
if (interval >= 1) {
return interval + 'y';
}
interval = Math.floor(seconds / 2592000);
if (interval >= 1) {
return interval + 'M';
}
interval = Math.floor(seconds / 86400);
if (interval >= 1) {
return interval + 'd';
}
interval = Math.floor(seconds / 3600);
if (interval >= 1) {
return interval + 'h';
}
interval = Math.floor(seconds / 60);
if (interval >= 1) {
return interval + 'm';
}
return 'Just now';
}
我发现有6分钟的延迟,如何通过逻辑纠正?