【问题标题】:Get and Map react Js获取和映射反应 Js
【发布时间】:2020-01-16 13:06:07
【问题描述】:

我的问题在这里,我得到了一个数据库,当然我在我的结果中映射了它,它向我显示了所有数据,而我只想显示最后记录的数据你知道吗?我让你看下面的代码谢谢你的帮助Neff

import React, { Component } from 'react';
import { CardText,  Col, } from 'reactstrap';
import axios from 'axios'

const entrypoint = process.env.REACT_APP_API_ENTRYPOINT+'/api';

class randomNumber  extends Component {

constructor(props) {
    super(props);
    this.state = {
        data: [],

    };
}
getRandom = async () => {        
    const res = await axios.get(
        entrypoint + "/alluserpls"
    )
    this.setState({ data: res.data })
}
componentDidMount() {
    this.getRandom()
}
render() {            
    let datas = this.state.data.map(datass => {
        return (
            <div>
              < Col sm="12" key={datass.id}>
           <div key="a"> 
      <CardText className="textForAdminPageButHereIsForRandomId">{datass.randomID}</CardText>
    </div>
  </Col>
            </div>
          )
        })
        return (    
                    <div className="box">  
                {datas}     
                </div>
        )
    }
}

导出默认随机数

【问题讨论】:

  • 您只需要最后一个条目吗?喜欢data[data.length-1]?如果只需要最后一个,为什么还要映射它?
  • “最后记录的数据”是什么意思?
  • 嗨,正确我正在寻找最后一个条目,不知道为什么要映射 ^^ 我是初学者 ^^

标签: javascript reactjs dictionary get


【解决方案1】:

使用索引来选择你想要的数据

在这种情况下,您需要找到最后一个索引。这是data.length - 1

然后你就可以通过data[data.length - 1]得到最后的数据

let datas = (this.state.data && this.state.data.length) && this.state.data[this.state.data.length - 1];

return datas ? (    
<div className="box">  
  <div>
   < Col sm="12" key={datas.id}>
    <div key="a"> 
      <CardText className="textForAdminPageButHereIsForRandomId">{datas.randomID}      
      </CardText>
    </div>
  </Col>
 </div>     
</div>) : null;

【讨论】:

  • 非常感谢你,我会试试这个,然后我会回复你:)
  • @Neff 确保数据首先存在。查看我所做的编辑
  • 好吧,这次成功了,我通过这个代码,然后我会回到你身边
猜你喜欢
  • 2021-02-27
  • 2019-05-17
  • 1970-01-01
  • 2022-09-24
  • 1970-01-01
  • 2023-03-05
  • 1970-01-01
  • 1970-01-01
  • 2021-07-03
相关资源
最近更新 更多