import React, { memo, useState } from 'react'; import type { EditorProps } from './EditorProps'; /** * 链接编辑器组件,用于编辑链接元素。 */ export const LinkEditor: React.FC = memo(({ element }) => { const linkElement = element as HTMLAnchorElement; const [href, setHref] = useState(linkElement.getAttribute('href') || ''); const [content, setContent] = useState(linkElement.innerHTML); const [target, setTarget] = useState(linkElement.target); const handleHrefChange = (e: React.ChangeEvent) => { const newHref = e.target.value; setHref(newHref); linkElement.href = newHref; }; const handleContentChange = (e: React.ChangeEvent) => { const newContent = e.target.value; setContent(newContent); linkElement.innerHTML = newContent; }; const handleTargetChange = (e: React.ChangeEvent) => { const newTarget = e.target.value; setTarget(newTarget); linkElement.target = newTarget; }; return (
); });