首页 > 解决方案 > 如何在反应js中从mysql中的表中呈现正确的日期

问题描述

我有点卡住了,我在 MySQL 中有一个表有 4 个读数,当我去渲染它们时,日期字段中有不同的日期,它们都显示今天的日期......为什么?,我做错了什么?这是我的代码...

getReading = user_id => { const { 读数 } = this.state;

if (
  readings.length > 0 &&
  readings.find(reading => reading.user_id === user_id)
) {
  this.setState({
    reading: {
      ...this.state.reading,
      user_id: readings.find(reading => reading.user_id === user_id)
        .user_id,
      date: readings.find(reading => reading.user_id === user_id).date,
      sugarB: readings.find(reading => reading.user_id === user_id).sugarB,
      carbsB: readings.find(reading => reading.user_id === user_id).carbsB,
      insulinB: readings.find(reading => reading.user_id === user_id)
        .insulinB,
      insulinSB: readings.find(reading => reading.user_id === user_id)
        .insulinSB,
      insulinFB: readings.find(reading => reading.user_id === user_id)
        .insulinFB,
      sugarL: readings.find(reading => reading.user_id === user_id).sugarL,
      carbsL: readings.find(reading => reading.user_id === user_id).carbsL,
      insulinL: readings.find(reading => reading.user_id === user_id)
        .insulinL,
      hbp: readings.find(reading => reading.user_id === user_id).hbp,
      lbp: readings.find(reading => reading.user_id === user_id).lbp,
      hr: readings.find(reading => reading.user_id === user_id).hr,
      sugarD: readings.find(reading => reading.user_id === user_id).sugarD,
      carbsD: readings.find(reading => reading.user_id === user_id).carbsD,
      insulinD: readings.find(reading => reading.user_id === user_id)
        .insulinD
    }
  });
}

}; 我的状态看起来像这样......读数:[],读数:{ user_id:0,日期:新日期()。toLocaleDateString(),糖B:0,碳水化合物B:0,胰岛素B:0,胰岛素SB:0,胰岛素FB: 0,sugarL:0,carbsL:0,insulinL:0,hbp:0,lbp:0,hr:0,sugarD:0,carbsD:0,insulinD:0},

标签: mysqlreactjsdate

解决方案


你可以将你的代码更新到这个代码,它会做一些确切的事情,但更容易阅读。SQL 中的日期可能为空。在您的渲染函数中,您可能会执行类似 new Date("from SQL" => null) 的操作。

const currentReading = readings.find(reading => reading.user_id === user_id);
if (
  readings.length &&
  currentReading
) {
  this.setState({
    reading: {
      ...this.state.reading,
      ...currentReading
    }
  });
}

推荐阅读