"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Renderizar Props em reação para componentes funcionais

Renderizar Props em reação para componentes funcionais

Publicado em 2024-11-07
Navegar:151

Render Props in react for functional components

No React, Render Props é uma técnica usada para compartilhar lógica entre componentes usando uma propriedade de função. Em vez de usar filhos ou composição, uma função é passada como suporte para renderizar o conteúdo dinamicamente. Essa abordagem funciona bem com componentes funcionais e ganchos.

Aqui está um exemplo de como implementar Render Props com componentes funcionais:

Exemplo

import React, { useState } from 'react';

// The component using render props
const MouseTracker = ({ render }) => {
  const [mousePosition, setMousePosition] = useState({ x: 0, y: 0 });

  const handleMouseMove = (event) => {
    setMousePosition({
      x: event.clientX,
      y: event.clientY,
    });
  };

  return (
    
{render(mousePosition)}
); }; // Component that consumes the render props const App = () => { return (

Mouse Tracker

(

Mouse Position: {x}, {y}

)}/>
); }; export default App;

Explicação:

  • MouseTracker é um componente funcional que usa uma propriedade de renderização.
  • A prop render é uma função que recebe a posição do mouse e retorna JSX.
  • O componente App passa uma função como suporte de renderização, que exibe as coordenadas xey do mouse.

Esse padrão permite mais flexibilidade na decisão de como renderizar o conteúdo com base na lógica dentro do componente MouseTracker.

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/imyusufakhtar/render-props-in-react-for-funcional-components-2a3k?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3