feat: 优化reaction用户名显示,显示前两个用户名以强化reaction信息量

pull/64/head
moonrailgun 2 years ago
parent bd3f2e129c
commit 3f76b9ee1b

@ -8,6 +8,7 @@ import {
} from 'tailchat-shared';
import _groupBy from 'lodash/groupBy';
import _uniqBy from 'lodash/uniqBy';
import _take from 'lodash/take';
import { useCallback, useMemo } from 'react';
import { Emoji } from '@/components/Emoji';
import React from 'react';
@ -27,17 +28,24 @@ const ReactionItem: React.FC<{
onClick: () => void;
}> = React.memo((props) => {
const { reaction, onClick } = props;
const usernames = useUsernames(reaction.users);
return (
<div className="py-0.5 px-1 bg-black bg-opacity-20 hover:bg-opacity-40 rounded cursor-pointer">
<Tooltip title={useUsernames(reaction.users).join(', ')}>
<Tooltip title={usernames.join(', ')}>
<div className="flex" onClick={onClick}>
<Emoji emoji={reaction.name} />
{reaction.length > 1 && (
<span className="ml-0.5">{reaction.length}</span>
<div className="ml-1">
{usernames.length < 3 ? (
<span>{_take(usernames, 2).join(',')}</span>
) : (
<span>
{_take(usernames, 2).join(', ')}, ...+{usernames.length - 2}
</span>
)}
</div>
</div>
</Tooltip>
</div>
);

Loading…
Cancel
Save