¿Cómo reaccionan los componentes de notación de puntos con los ganchos de reacción?

Ruegen

He visto algunas bibliotecas usar componentes de notación de puntos en React

p.ej

<Menu>
   <Menu.Item>Item 1</Menu.Item>
   <Menu.Item>Item 2</Menu.Item>
</Menu>

esto está usando la palabra clave estática en el componente de clase, por ejemplo

const Item = () => ...code

class Menu extends Component {
  static Item = Item

  ...code

Dado que los componentes funcionales con los ganchos de React no son componentes de clase, ¿se puede usar este patrón de alguna manera con componentes funcionales (por ejemplo, acceder al prototipo o algo así?)

¿Todavía se puede hacer esto?

O Drori

Este patrón se llama Componentes compuestos. Para usar el patrón con componentes funcionales, simplemente agregue el subcomponente ( Item) como una propiedad del componente principal ( Menu).

Puede encontrar más información en el artículo de Kent C. Dodds - React Hooks: Compound Components .

const Item = ({ children }) => (<li>{children}</li>);

const Menu = ({ children }) => (<ul>{children}</ul>);

Menu.Item = Item;


ReactDOM.render(
  <Menu>
     <Menu.Item>Item 1</Menu.Item>
     <Menu.Item>Item 2</Menu.Item>
  </Menu>,
  root
);
<script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script>
<script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script>

<div id="root"></div>

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Ganchos de reacción y equivalentes del ciclo de vida de los componentes

¿Cómo realizar una prueba unitaria de los ganchos de reacción mediante el montaje superficial de los componentes funcionales de React?

Cómo envolver a los niños de reacción con componentes dinámicos o etiquetas

¿Cómo funciona Array.map () con los componentes de reacción?

los componentes de reacción no se actualizan

¿Cómo simulamos los valores de estado para el componente de reacción usando ganchos de reacción en Jest?

Cómo refactorizar el funcionamiento correcto de los ganchos anidados de reacción

¿Cómo restablecer el estado de los ganchos de reacción?

¿Cómo utilizar los ganchos de reacción de forma eficaz?

Estado de los ganchos de reacción: Indefinido

¿Cómo reaccionan los valores de referencia de los ganchos que se pasan a la matriz de dependencias?

¿Cómo reaccionan los valores de referencia de los ganchos que se pasan a la matriz de dependencias?

¿Cómo determinan los ganchos de reacción el componente para el que son?

¿Cómo insertar un nuevo valor en la matriz actual usando los ganchos de reacción?

Componentes de función de reacción con ganchos frente a componentes de clase

La carga no se muestra en los ganchos de reacción

Comprender los ganchos de suspenso y reacción

No se pueden usar los ganchos de reacción con react-router-dom

Cómo separar los contextos de edición y actualización (administración en reposo, notación de puntos)

¿Tengo que guardar los archivos de componentes de reacción con una extensión jsx?

Cómo probar correctamente los métodos de componentes de reacción

¿Cómo ocultar / mostrar todos los componentes de reacción cuando aparece la pantalla de carga?

¿Cómo ocultar / mostrar todos los componentes de reacción cuando aparece la pantalla de carga?

¿Cómo transferir el estado entre los componentes de React con ganchos?

Cómo ordenar los componentes de reacción en función de los accesorios que se le pasan

Cómo pasar parámetros con la función de flecha en los ganchos de ReactJS

cómo concatenar (variables + nombres de clave de objeto) para obtener los valores del objeto en notación de puntos

Espere los datos de la llamada API antes de renderizar los ganchos de reacción

Espere los datos de la API antes de renderizar los ganchos de reacción

TOP Lista

CalienteEtiquetas

Archivo