首页 > 解决方案 > 这个 setState 的反应钩子是什么?

问题描述

我在 中找到了这段代码,但react-native-dynamic-search-bar我找不到用react-native-hooks.

this.setState({
  query: text,
  dataSource: newData,
});

这就是整个功能

  const filterProjectList = (text) => {
    var newData = dataBackup.filter((item) => {
      const itemData = item.name.toLowerCase();
      const textData = text.toLowerCase();
      return itemData.indexOf(textData) > -1;
    });
    this.setState({
      query: text,
      dataSource: newData,
    });
  };

标签: javascriptreact-nativereact-hooks

解决方案


您可以使用useState挂钩而不是 setState

你可以这样重写:

  // yourComponent.js

    import React, {useState} from 'react'

   const yourComp =() =>{
    const [query,setQuery] = useState("")
    const [dataSource,setDatasource] = useState([])

    const filterProjectList = (text) => {
        var newData = dataBackup.filter((item) => {
          const itemData = item.name.toLowerCase();
          const textData = text.toLowerCase();
          return itemData.indexOf(textData) > -1;
        });
        setQuery(text)
        setDatasource(newData)

      };
     ....
     return <div>Hello World</div>
    }

推荐阅读