"use client"; import { useState } from "react"; import { dyEmojiUrl } from "@/lib/dyEmoji"; type EmojiImgProps = { /** 表情 key(短代码 [:key:] 的 key) */ k: string; className?: string; }; /** 抖音表情小图:加载失败回退为 [表情] 文本,避免破图 */ export default function EmojiImg({ k, className }: EmojiImgProps) { const [broken, setBroken] = useState(false); if (broken) { return [表情]; } return ( // eslint-disable-next-line @next/next/no-img-element {`[:${k}:]`} e.preventDefault()} onError={() => setBroken(true)} /> ); }