import { useMemo, useState } from 'react' import { ICON_NAMES, Icon, Input, Space, type IconName } from '../../src' import { Demo } from '../components/Demo' import { Section } from '../components/Section' export function Icons() { const [keyword, setKeyword] = useState('') const [copied, setCopied] = useState(null) const visible = useMemo(() => { const query = keyword.trim().toLowerCase() return query === '' ? ICON_NAMES : ICON_NAMES.filter((name) => name.includes(query)) }, [keyword]) const copy = (name: IconName) => { const task = navigator.clipboard?.writeText(name) task?.catch(() => undefined) setCopied(name) window.setTimeout(() => setCopied((current) => (current === name ? null : current)), 1200) } return (
`} > setKeyword(event.target.value)} clearable onClear={() => setKeyword('')} style={{ width: 300 }} /> {visible.length} / {ICON_NAMES.length}
{visible.map((name) => ( ))}
{visible.length === 0 && (

没有匹配「{keyword.trim()}」的图标,换个关键词试试。

)}
) }