Слияние кода завершено, страница обновится автоматически
import React, { FunctionComponent, memo, useCallback } from 'react';
import classNames from 'classnames';
import Icon from '../icon';
export interface IconItemProps {
prefixCls?: string;
type: string;
active: boolean;
onSelect: (type: string) => void;
customFontName?: string;
}
const IconItem: FunctionComponent<IconItemProps> = function IconItem(props) {
const { prefixCls, type, onSelect, active, customFontName } = props;
const handleClick = useCallback(() => {
onSelect(type);
}, [type, onSelect]);
return (
<li className={classNames({ [`${prefixCls}-item-selected`]: active })}>
<div onClick={handleClick}>
<Icon customFontName={customFontName} type={type} />
<p>{type}</p>
</div>
</li>
);
};
IconItem.displayName = 'IconItem';
export default memo(IconItem);
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )