Javascript React.js如何用字符串替换响应数据中的null或空字符串?

Javascript React.js如何用字符串替换响应数据中的null或空字符串?,javascript,reactjs,error-handling,axios,Javascript,Reactjs,Error Handling,Axios,我仍在开发我的第一个应用程序,并且很难弄清楚如何用占位符“N/a”字符串替换获取响应数据。我正在使用React Axios发出提取请求: onAdmissionClick(event) { var patientName = event.target.value; const axiosInstance = axios.create({ headers: { 'Authorization': 'TOKEN , 'Accept': 'a

我仍在开发我的第一个应用程序,并且很难弄清楚如何用占位符“N/a”字符串替换获取响应数据。我正在使用React Axios发出提取请求:

onAdmissionClick(event) {
    var patientName = event.target.value;
    const axiosInstance = axios.create({
      headers: { 
        'Authorization': 'TOKEN ,
        'Accept': 'application/json' }
    });
    axiosInstance.get('APILINK' + patientName + '&_count=5&_sort=-date')
      .then(response => {
      !response.data.entry ? this.setState({ EncounterData: ''}) : this.setState({ EncounterData: response.data.entry});

      this.toggleModal(); 
      console.log(response.data.entry);
      
    }).catch((error) => console.log(error));

现在“EncounterData”是一个JSON响应,但问题是一些值要么为空字符串,要么为空字符串,当我的应用程序遇到一个字符串时,就会在渲染时崩溃。我在渲染数据时使用了三元运算符。例如,“参与者”的某些数据有时可以是空字符串,如果患者仍在护理中,“出院日期”也可以为空:

{
            Object.keys(this.state.EncounterData).length !== 0  ?
            Object.values(this.state.EncounterData).map((items, i)   => {

              return (
                
                <li key={i}>
                   <p>Visit ID: {items.resource.identifier[0].value}</p> 
                   <p>Attending Physician: {items.resource.participant[0].individual.display} </p>
                   <p>Admitting Physician: {items.resource.participant[1].individual.display} </p>
                   <p> Admission Date: {items.resource.period.start.split('T')[0]} </p>
                   <p> Discharge Date: {items.resource.period.end.split('T')[0]} </p>
                  
                </li>
              )
            }) : <li>no Admissions reported</li>
       }

{
Object.keys(this.state.EncounterData).length!==0?
Object.values(this.state.EncounterData).map((items,i)=>{
返回(
  • 访问ID:{items.resource.identifier[0].value}

    主治医师:{items.resource.participant[0].individual.display}

    入院医师:{items.resource.participant[1].individual.display}

    入学日期:{items.resource.period.start.split('T')[0]}

    出院日期:{items.resource.period.end.split('T')[0]}

  • ) }):
  • 无入院报告
  • }

    如何检查并用字符串“N/A”替换任何空数据?如果需要,我愿意创建新状态。

    您可以使用另一个三元值作为空检查释放日期:{items.resource.period.end.split('T')[0]==未定义?N/A:items.resource.period.end.split('T')[0]}如下所示。