ReactJS

Форк
0
/
GenericList.tsx 
33 строки · 669.0 Байт
1
import React from 'react';
2
import {noop} from "../../utils/react/noop";
3

4
export interface IItem {
5
  itemContent: JSX.Element;
6
  id: string;
7
  onClick?: (id: string) => void;
8
  className?: string;
9
  As?: 'a' | 'li' | 'button' | 'div';
10
  href?: string;
11
}
12

13
export interface IGenericListProps {
14
  list: IItem[];
15
}
16

17
export function GenericList({list}: IGenericListProps) {
18
  return (
19
    <>
20
      {list.map(({As = 'div', itemContent, onClick = noop, className, href, id}) => (
21

22
        <As
23
          className={className}
24
          onClick={() => onClick(id)}
25
          key={id}
26
          href={href}
27
        >
28
          {itemContent}
29
        </As>
30
      ))}
31
    </>
32
  );
33
}
34

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.