在我的一生中,我不知道如何从slate.js中清除编辑器组件中的所有文本。
我试过:
Transforms.delete(editor, {}); -> doesn't do anything
editor.deleteBackward("line"); -> only deletes one line, not all我也尝试过手动重命名编辑器组件,不幸的是,它没有更新到它的初始状态:(
我一直在撕扯着板岩杂志的文件,到处都找不到任何东西!如果有人有任何想法,一定会很高兴的。
以下是编辑器的实现方式:
const editor = useMemo(() => withHistory(withReact(createEditor())), []);
<Editable
key={stateKey}
onKeyDown={(event: any) => handleKeyDown(event)}
style={{ overflowWrap: "anywhere", width: "100%" }}
onPaste={(e) => {
if (e.clipboardData) {
if (e.clipboardData.files.length > 0) {
setFiles([...files, ...Array.from(e.clipboardData.files)]);
e.preventDefault();
}
}
}}
decorate={decorate}
renderLeaf={renderLeaf}
placeholder="What's happening?"
/>发布于 2022-10-17 19:16:58
您可以变异editor.children并将其设置为“空”值。
const editor = useMemo(() => withHistory(withReact(createEditor())), []);
editor.children = [
{
type: "paragraph",
children: [{ text: "" }]
}
];注意事项:Slate需要一个最少的数组来正确地呈现一个空文本节点。
https://stackoverflow.com/questions/74101405
复制相似问题