react筛选里面渲染数据

在React中进行数据筛选并渲染的常见做法是使用数组的filter()方法结合map()方法。

首先,你需要将数据存储在一个数组中,然后使用filter()方法筛选出符合特定条件的数据。接着,将筛选后的数据通过map()方法进行渲染。

以下是一个示例:

import React, { useState } from 'react';

const DataFilter = () => {
  const [data, setData] = useState([
    { id: 1, name: 'John', age: 25 },
    { id: 2, name: 'Jane', age: 30 },
    { id: 3, name: 'Mike', age: 35 },
    // 其他数据...
  ]);

  const filteredData = data.filter(item => item.age > 30);

  return (
    <div>
      <h1>Filtered Data:</h1>
      <ul>
        {filteredData.map(item => (
          <li key={item.id}>
            {item.name} - Age: {item.age}
          </li>
        ))}
      </ul>
    </div>
  );
};

export default DataFilter;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
React 中实现搜索框筛选,可以通过以下步骤来实现: 1. 创建一个包含搜索框和数据列表的组件。 2. 在组件的 state 中设置一个变量来存储输入框中的搜索关键字。 3. 创建一个筛选函数,该函数接受数据列表和搜索关键字作为参数,并返回一个筛选后的结果列表。 4. 在组件的 render 方法中,根据搜索关键字和筛选函数返回的结果渲染数据列表。 下面是一个简单的例子: ```javascript class SearchComponent extends React.Component { constructor(props) { super(props); this.state = { keyword: '', }; } handleSearch = (event) => { this.setState({ keyword: event.target.value, }); }; filterData = (dataList, keyword) => { return dataList.filter((data) => data.name.toLowerCase().includes(keyword.toLowerCase()) ); }; render() { const filteredData = this.filterData(this.props.dataList, this.state.keyword); return ( <div> <input type="text" onChange={this.handleSearch} /> <ul> {filteredData.map((data) => ( <li key={data.id}>{data.name}</li> ))} </ul> </div> ); } } ``` 在上面的例子中,我们创建了一个名为 `SearchComponent` 的组件,该组件包含一个输入框和一个数据列表。在组件的 state 中,我们设置了一个名为 `keyword` 的变量来存储搜索关键字。在输入框的 `onChange` 事件中,我们更新了 `keyword` 变量的值。 我们还创建了一个名为 `filterData` 的筛选函数,该函数接受数据列表和搜索关键字作为参数,并返回一个筛选后的结果列表。在组件的 render 方法中,我们调用了 `filterData` 函数来获取筛选后的数据列表,并根据该列表渲染数据项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值