«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как создать повторно используемые компоненты списка в React с помощью пользовательских функций рендеринга?

Как создать повторно используемые компоненты списка в React с помощью пользовательских функций рендеринга?

Опубликовано 31 октября 2024 г.
Просматривать:649

How to Build Reusable List Components in React with Custom Render Functions?

При работе в React обычно имеется компонент списка, который принимает данные и сопоставляет каждый элемент для его отображения. Однако разные части вашего приложения могут требовать разной визуализации одних и тех же данных. Лучшее решение — сделать ваш компонент списка более гибким, используя свойство render для передачи пользовательской функции рендеринга.

Почему это необходимо?

Представьте, что в вашем приложении есть список пользователей. В некоторых областях вы хотите отображать только имена пользователей, а в других вам необходимо отображать более подробную информацию, например адреса электронной почты или изображения профиля. Создание нескольких компонентов списка для каждого варианта использования может привести к дублированию кода и усложнить поддержку проекта.

Каково решение?

Простое и элегантное решение — заставить ваш компонент списка принимать функцию renderItem. Эта функция принимает отдельный элемент (в нашем случае пользователя) в качестве аргумента и возвращает узел React, который можно отобразить любым удобным для вас способом.

import React from 'react';

const List = ({ data, renderItem }) => {
  return (
    
    {data.map((item) => (
  • {renderItem(item)}
  • ))}
); }; export default List;

Как использовать этот компонент?

import List from './List';

const users = [
  { id: 1, name: 'John Doe', email: '[email protected]' },
  { id: 2, name: 'Jane Smith', email: '[email protected]' }
];

const UserList = () => {
  return (
     {user.name}}
    />
  );
};

// or 

const DetailedUserList = () => {
  return (
     (
        
{user.name}

{user.email}

)} /> ); };

Почему это Великий Образец?

Этот шаблон обеспечивает максимальную гибкость с минимальным дублированием кода. Вместо создания отдельного компонента списка для каждого варианта использования у вас есть один компонент списка, который может удовлетворить любые требования к рендерингу.

Если вы работали с React Native, этот шаблон должен показаться вам знакомым, поскольку он используется в их компонентах списков, таких как FlatList. Это проверенное и надежное решение для рендеринга списков.

Разрешив компоненту списка принимать свойство renderItem, вы можете легко создавать повторно используемые компоненты, которые адаптируются к различным частям вашего приложения. Такой подход упрощает вашу кодовую базу, облегчает ее поддержку и повышает масштабируемость вашего приложения.

Теперь, когда вы изучили этот шаблон, попробуйте его в своих проектах React, и вы увидите, насколько он мощный и гибкий! Удачного кодирования?

Заявление о выпуске Эта статья перепечатана по адресу: https://dev.to/vishnusatheesh/how-to-build-reusable-list-components-in-react-with-custom-drender-functs-7ge?1 Если есть какое-либо нарушение, пожалуйста, свяжитесь с исследованием[email protected], чтобы удалить его.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3