Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

202
Visualizações
Resalte los datos de PrimeReact Datatable usando react-highlight-words

Tengo PrimeReact DataTable con funcionalidad de búsqueda/filtro. Mi objetivo principal aquí es resaltar el texto o los datos en DataTable que coinciden con la entrada de búsqueda del usuario.

Usé react-highlight-words para resaltar los datos. Usando los accesorios textToHighlight , puedo resaltar el texto.

El problema:

  1. textToHighlight solo acepta cadenas y no tengo idea de cómo pasar el componente DataTable o sus datos en los accesorios.

Intenté lo siguiente:

  1. Paso el estado de Input en los accesorios textToHighlight pero, lamentablemente, imprime los datos fuera de la tabla.
  2. Traté de colocar el componente DataTable dentro del componente Highlighter , pero la tabla no se muestra.

Aquí está la imagen: ingrese la descripción de la imagen aquí

ThesisList.jsx

 // Search Box const renderHeader = () => { return ( <div className="flex justify-between"> <Button className="p-button-outlined" icon="pi pi-filter-slash" label="Clear" onClick={clearFilter} /> <span className="p-input-icon-left"> <i className="pi pi-search" /> <InputText placeholder="Search" value={globalFilterValue} onChange={onGlobalFilterChange} /> </span> </div> ); }; // The function who checks if the input matches the Filters (check initFilter()). const onGlobalFilterChange = (e) => { const value = e.target.value; let _filter = { ...filters }; _filter["global"].value = value; setFilters(_filter); setGlobalFilterValue(value); }; return ( <div className="p-4 w-full h-screen"> //As you can see here I used the Input state <Highlighter searchWords={[globalFilterValue]} textToHighlight={globalFilterValue} /> <DataTable> ... </DataTable> </div> );
about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Cada columna en la tabla de datos de Primereact tiene un accesorio llamado body a través del cual podemos formatear las celdas, por lo que en su caso, puede pasar el Highlighter como el cuerpo de cada columna.

Aquí hay un ejemplo con la columna de título.

 <Datatable> ... <Column field="title" header="Title" body={(rowData) => ( <Highlighter searchWords={[globalFilterValue]} textToHighlight={rowData.title} /> )} /> ... </Datatable>
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda