Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/409.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript gmail使用哪个插件显示邮件时间或日期?_Javascript_Jquery_Ruby On Rails_Datetime_Gmail - Fatal编程技术网

Javascript gmail使用哪个插件显示邮件时间或日期?

Javascript gmail使用哪个插件显示邮件时间或日期?,javascript,jquery,ruby-on-rails,datetime,gmail,Javascript,Jquery,Ruby On Rails,Datetime,Gmail,我想知道gmail使用哪个js插件来显示邮件时间(如果是今天的邮件)或日期 如果今天收到邮件,则显示时间为“下午1:18”,否则显示日期为“9月5日”。如果我去年收到了邮件,那么它会显示“11/12/13”这样的日期 有没有js插件或rails可以做到这一点? 像这样 谢谢你为什么需要任何插件或宝石。您可以使用helper轻松地完成此操作。 在助手中: require 'date' def time_date(date) if date.year > Time.now.year

我想知道gmail使用哪个js插件来显示邮件时间(如果是今天的邮件)或日期

如果今天收到邮件,则显示时间为“下午1:18”,否则显示日期为“9月5日”。如果我去年收到了邮件,那么它会显示“11/12/13”这样的日期

有没有js插件或rails可以做到这一点? 像这样


谢谢你为什么需要任何插件或宝石。您可以使用helper轻松地完成此操作。 在助手中:

require 'date'

def time_date(date)
  if date.year > Time.now.year
    date.strftime('%d/%m/%y')
  else 
    date.to_date == Time.now.to_date ? date.strftime('%l:%M %P') : date.strftime('%b %d')
  end
end
在你看来:

<%= time_date(@model.created_at) %>

希望这对你有帮助

您可以使用moment.js来显示日期和时间 导入moment.js并调用下面的函数,将传递日期作为参数

function emailTimeDisplay(dbDate) {
    dbDate = new moment(dbDate);
    var currentDate = new moment();
    if (currentDate.isSame(dbDate, 'day'))
        return dbDate.format('h:mm a');
    else if (currentDate.isSame(dbDate, 'year'))
        return dbDate.format("MMM DD");
    else
        return dbDate.format("MM/DD/YYYY");
}
function emailTimeDisplay(dbDate) {
    dbDate = new moment(dbDate);
    var currentDate = new moment();
    if (currentDate.isSame(dbDate, 'day'))
        return dbDate.format('h:mm a');
    else if (currentDate.isSame(dbDate, 'year'))
        return dbDate.format("MMM DD");
    else
        return dbDate.format("MM/DD/YYYY");
}

您可以使用
moment.js
来显示这种日期和时间。导入
moment.js
并调用此函数,将日期作为参数传递

function emailTimeDisplay(dbDate) {
    dbDate = new moment(dbDate);
    var currentDate = new moment();
    if (currentDate.isSame(dbDate, 'day'))
        return dbDate.format('h:mm a');
    else if (currentDate.isSame(dbDate, 'year'))
        return dbDate.format("MMM DD");
    else
        return dbDate.format("MM/DD/YYYY");
}
function emailTimeDisplay(dbDate) {
    dbDate = new moment(dbDate);
    var currentDate = new moment();
    if (currentDate.isSame(dbDate, 'day'))
        return dbDate.format('h:mm a');
    else if (currentDate.isSame(dbDate, 'year'))
        return dbDate.format("MMM DD");
    else
        return dbDate.format("MM/DD/YYYY");
}

我可以通过助手的方法来实现它。但是如果我有1000条记录,那么我必须调用这个助手方法1000次,这将降低我的性能。这就是为什么要寻找js插件。在jquery中没有直接的插件可以这么做。但是你可以通过我已经相应地更新了我的答案来实现它