一场噩梦试图在React App中比较两个日期是否匹配

亚当·萨克菲尔德

如标题所述,我正在努力使该功能正常运行。我看过这里的类似文章以及许多参考MomentJS,他们建议不要在自己的网站上使用MomentJS。

 const today = new Date().toLocaleDateString('en-gb')

 return loading ? <Spinner /> : 
 <Fragment>
    <div className="calendar_events">
      <p className="ce_title">Upcoming Events</p>
        {
          appointments.map(appointment => {
            let date = new Date(appointment.date).toLocaleDateString('en-gb')
            {console.log('date', typeof date)}
            {console.log('today', typeof today)}
            if(today == date) {
              <Appointment key={appointment._id} appointment={appointment} date={date}/>
            }        
          })
        }
    </div>
  </div>
</Fragment>

我尝试了一下但没有成功。我现在正在尝试香草JS,当我console.log每个日期,今天和一个约会日期时,它们是相同的。当我console.log这些类型时,它们都是字符串,但是我的if语句永远不会运行。

我只想调用与今天的日期或日历上任何其他给定日期匹配的约会组件。

我意识到我要在这里重新创建轮子,但这更多的是关于学习和让我的想法远离实际的最终结果。

对于我在地球上缺少什么方面的任何指导,我将很高兴。

用于typeof的控制台输出

date string Calendar.js:39
today string Calendar.js:40 

每个变量的控制台输出

date 29/11/20 Calendar.js:39
today 29/11/20 Calendar.js:40 *2 as there are two demo appointments on this date.

我也尝试过=====运算符,但使用了nada。

请发送帮助,我的理智迷失了。

编辑

我想可以在@Uzair Ashraf的帮助下使其正常运行。

使用以下代码,它甚至看起来更简洁。

{
          appointments.map(appointment => {
            let date = new Date(appointment.date).toLocaleDateString('en-gb')
            if(today === date) {
              return <Appointment key={appointment._id} appointment={appointment} />
            }
           })
        }
Uzair Ashraf |

您缺少返回声明。虽然如果没有后备功能,它将创建一个带有React元素且未定义的数组。

我建议通过数组过滤,然后映射

编辑:另外,您似乎还有一个额外的div标签。您也不需要片段

Edit2:您可以像这样分割日期:

let date =  "2020-11-29T00:00:00.000Z"
date = date.split('T')[0]
 const today = new Date().toLocaleDateString('en-gb')

 return loading ? <Spinner /> : 
    <div className="calendar_events">
      <p className="ce_title">Upcoming Events</p>
        {
          appointments
           .filter(appointment => new Date(appointment.date).toLocaleDateString('en-gb') === today)
           .map(appointment => {
              return <Appointment key={appointment._id} appointment={appointment} date={new Date(appointment.date).toLocaleDateString('en-gb')}/>
            }        
          })
        }
  </div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在SQL的同一列中比较两个日期

来自分类Dev

FUNCTIONS 的继承正在变成一场噩梦

来自分类Dev

贪婪匹配时停在第一场比赛

来自分类Dev

快速比较两个日期以检查一天是否已经过去

来自分类Dev

比较两个文本两个文件,一个比较包含日期的列

来自分类Dev

如何在Swift iOS中比较两个数组并从一个数组中删除匹配元素

来自分类Dev

我可以组合这两个命令吗?(或者我正在打一场失败的战斗?)

来自分类Dev

Visual Studio SSDT数据比较如何在一个数据库中比较两个表

来自分类Dev

在数组中比较:如果存在两个最大值,则比较另一个值

来自分类Dev

使一个场景中的网格受到另一场景中灯光的影响

来自分类Dev

如何匹配所有 5 位数字但跳过第一场比赛

来自分类Dev

匹配器跳过第一场比赛?或者我做错了什么

来自分类Dev

对共享变量进行无保护的访问是否总是一场数据竞赛?

来自分类Dev

系统如何知道在 Android 中,一场板球有 6 个球(计算)

来自分类Dev

如何在一个表中比较两个具有相同值但效果不同的字段?

来自分类Dev

比较上一年中一个日期的两个日期

来自分类Dev

检查两个日期是否在同一年

来自分类Dev

在对其中一个执行操作时,如何在Mongo中比较两个字段?

来自分类Dev

我可以在GAE的ndb中比较单一种类的两个属性吗?

来自分类Dev

搜索两个列标题,仅从一张工作表中比较和删除重复的行。

来自分类Dev

在忽略第一场比赛的同时如何从一个点到另一个点?

来自分类Dev

如何在JavaScript中比较两个日期时间?

来自分类Dev

如何在querybuilder中比较两个日期

来自分类Dev

我可以在Smalltalk中比较两个日期吗?

来自分类Dev

如何在bash脚本中比较两个日期?

来自分类Dev

如何在AngularJS中比较两个日期?

来自分类Dev

在 RecyclerView 中比较来自 JSON 结果的两个日期

来自分类Dev

试图比较两个整数

来自分类Dev

比较两个对象,仅返回第一个对象的匹配值

Related 相关文章

  1. 1

    如何在SQL的同一列中比较两个日期

  2. 2

    FUNCTIONS 的继承正在变成一场噩梦

  3. 3

    贪婪匹配时停在第一场比赛

  4. 4

    快速比较两个日期以检查一天是否已经过去

  5. 5

    比较两个文本两个文件,一个比较包含日期的列

  6. 6

    如何在Swift iOS中比较两个数组并从一个数组中删除匹配元素

  7. 7

    我可以组合这两个命令吗?(或者我正在打一场失败的战斗?)

  8. 8

    Visual Studio SSDT数据比较如何在一个数据库中比较两个表

  9. 9

    在数组中比较:如果存在两个最大值,则比较另一个值

  10. 10

    使一个场景中的网格受到另一场景中灯光的影响

  11. 11

    如何匹配所有 5 位数字但跳过第一场比赛

  12. 12

    匹配器跳过第一场比赛?或者我做错了什么

  13. 13

    对共享变量进行无保护的访问是否总是一场数据竞赛?

  14. 14

    系统如何知道在 Android 中,一场板球有 6 个球(计算)

  15. 15

    如何在一个表中比较两个具有相同值但效果不同的字段?

  16. 16

    比较上一年中一个日期的两个日期

  17. 17

    检查两个日期是否在同一年

  18. 18

    在对其中一个执行操作时,如何在Mongo中比较两个字段?

  19. 19

    我可以在GAE的ndb中比较单一种类的两个属性吗?

  20. 20

    搜索两个列标题,仅从一张工作表中比较和删除重复的行。

  21. 21

    在忽略第一场比赛的同时如何从一个点到另一个点?

  22. 22

    如何在JavaScript中比较两个日期时间?

  23. 23

    如何在querybuilder中比较两个日期

  24. 24

    我可以在Smalltalk中比较两个日期吗?

  25. 25

    如何在bash脚本中比较两个日期?

  26. 26

    如何在AngularJS中比较两个日期?

  27. 27

    在 RecyclerView 中比较来自 JSON 结果的两个日期

  28. 28

    试图比较两个整数

  29. 29

    比较两个对象,仅返回第一个对象的匹配值

热门标签

归档