reactjs - @tinymce/tinymce-react - 我如何改变代码的焦点?
问题描述
我尝试通过按下按钮来聚焦 TinyMCE 文本编辑器,auto_focus
但不幸的是,它不起作用。我的 TinyMCE 组件使用:
<Editor
apiKey='*************'
onInit={(evt, editor) => editorRef.current = editor}
init={{
height: 500,
width: "100%",
auto_focus: isInFocus, // not working
menubar: false,
inline: true,
plugins: [
],
toolbar: 'bold italic underline | undo redo | alignleft aligncenter ' +
'alignright alignjustify',
content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:14px }'
}}
/>
网上的解决方案不讲包npm @tinymce/tinymce-react
。感谢帮助者。
解决方案
我自己很快找到了解决方案:我使用了useEffect
钩子和editorRef.current.focus()
函数:
export default function TinymceInlineEditor({isInFocus}) {
const editorRef = useRef(null);
useEffect(() => {
isInFocus ? editorRef.current.focus() : null;
}, [isInFocus]);
return (
<Editor
apiKey='************'
onInit={(evt, editor) => editorRef.current = editor}
onBlur={(e) => handelBlur(editorRef)}
init={{
height: 500,
width: "100%",
menubar: false,
inline: true,
plugins: [
],
toolbar: 'bold italic underline | undo redo | alignleft aligncenter ' +
'alignright alignjustify',
content_style: 'body { font-family:Helvetica,Arial,sans-serif; font-size:14px }'
}}
/>
);
}
推荐阅读
- python - 在 PyQT5 中显示 vpl.mesh_plot
- xpath - 如何在 xpath 中转义正斜杠?
- python - 如何从字符串 obj 中添加秘密函数,女巫从其他数据文件中获取
- asp.net - ASP.NET MVC:从视图导航时如何将客户端浏览器上的 DOM Body 元素的 ID 发送到控制器
- clojure - 将布尔值映射到 clojure 中的列表
- python - 如何查找具有一个或多个负值的熊猫列
- python - pandas get.dummies API 使用
- telegram-bot - 如何从节点红色的环境变量中设置电报机器人的名称?
- javascript - 将 toUTCString 格式化为 toLocaleString
- javascript - 将 HTMLFormElement.reset() 与 Downshift 和 react-hook-form 一起使用