1
resposta

Retorno do Regex

Vejamos o codigo abaixo:

export default function Itens(props : Props){
  const [lista, setLista] = useState(cardapio);
  const {busca, filtro} = props;

  function testaBusca(title: string) {
   const regex = new RegExp(busca, 'i');
   return regex.test(title);   
  }

  function testaFiltro(id: number){
    if (filtro !== null) return filtro === id;
    return true;
  }

  useEffect(() => {
    const novaLista = cardapio.filter(item => testaBusca(item.title) && testaFiltro(item.category.id));
    setLista(novaLista);
  }, [busca, filtro]);

Na const novaLista, tanto o testaBusca como o testaFiltro, tem de retornar como true para que ele faca parte da novaLista. A minha duvida comeca na funcao testaBusca....

 function testaBusca(title: string) {
   const regex = new RegExp(busca, 'i');
   return regex.test(title);   
  }

Se o titulo (title) for vazio, o regex retorna true?

Quanto ao useEffect, no meu vsCode ele reclama dizendo que eu tenho de colocar testaBusca e testaFiltro, como dependencias! Alguem mais?

1 resposta

Bom dia, quanto ao array de dependencias, o meu tb da essa mensagem, não parei pra verificar o porque, mas é alguma coisa relacionada ao esLint pelo que mostra na msg, não parei para ler a documentação....