javascript - 在 react.js 中映射一个充满 html 元素的对象
问题描述
我正在努力映射包含一些 HTML 元素的对象,我只想要我的 ul 中的所有 li 元素。
我一直在尝试几种映射用法,但无法使其正常工作。
test(){
var l;
for(var i = 0; i <= this.props.paginationData.totalPage; i++){
if (i == parseInt(this.props.paginationData.currentPage)){
l += <li className="page-item active"><a className="page-link" href="#">{this.props.paginationData.currentPage}</a></li>
}
else{
l += <li className="page-item"><a className="page-link" onClick={()=>this.props.search(this.props.sortData.orderby, this.props.sortData.sens, this.props.searchTerm, i)} >Précedent</a></li>
}
}
return l
}
render(){
if (this.props.paginationData.totalPage <= 5){
return(
<div className="container">
<ul className="pagination">
{this.test().map(obj => {obj.l} )}
</ul>
</div>
)}
谢谢!
解决方案
_getPaginationButtons = (paginationData)=>{
return paginationData.map((res,key)=>{
if (key !== this.props.paginationData.currentPage) {
return (<li className="page-item"><a className="page-link" onClick={()=>this.props.search(this.props.sortData.orderby, this.props.sortData.sens, this.props.searchTerm, i)} >Précedent</a></li>))
}
else {
return (<li className="page-item active"><a className="page-link" href="#">{index}</a></li>)
})
}
render() {
const {paginationData} = this.props
return (
<div className="container">
<ul className="pagination">
{this._getPaginationButtons(paginationData)}
</ul>
}
</div>
)
}
我不知道你的 if 语句逻辑是什么,但它应该可以工作
推荐阅读
- python - 在 selenium python 中每次搜索获取谷歌链接搜索结果
- java - 使用 thymeleaf 和 Spring boot 从 html 文件中获取输入值
- java - Java中的Base 2自定义方法和近似值
- microsoft-graph-api - Bot 框架不返回 JWT
- mysql - 通过SQL查找过去12个月行业收入前30%
- javascript - 为什么将 .toISOString() 添加到我的时间戳会改变时区?
- css - 我怎样才能使用第一个类型或第一个孩子来只针对顶级孩子。不是嵌套的吗?
- javascript - 在通用 javascript 错误上显示 html 消息
- android-studio - Mapbox 未解决的依赖项 android SDK
- javascript - 使用列选择器输入搜索 HTML 表,然后根据结果行显示属于该组的所有行 (Javascript)