Slash Command
Slash command menu for quick insertion of various content types.
components/demo.tsx
'use client';
import React from 'react';
import { Plate } from '@udecode/plate-common/react';
import { editorPlugins } from '@/components/editor/plugins/editor-plugins';
import { useCreateEditor } from '@/components/editor/use-create-editor';
import { Editor, EditorContainer } from '@/components/plate-ui/editor';
import { DEMO_VALUES } from './values/demo-values';
export default function Demo({ id }: { id: string }) {
const editor = useCreateEditor({
plugins: [...editorPlugins],
value: DEMO_VALUES[id],
});
return (
<Plate editor={editor}>
<EditorContainer variant="demo">
<Editor />
</EditorContainer>
</Plate>
);
}
Installation
npm install @udecode/plate-slash-command
Usage
import { SlashPlugin, SlashInputPlugin } from '@udecode/plate-slash-command/react';
const plugins = [
// ...otherPlugins,
SlashPlugin,
];
const components = {
// ...otherComponents,
[SlashInputPlugin.key]: SlashInputElement,
};
如何使用:
- 在文档中的任何位置输入
/
以打开斜杠菜单。 - 开始输入以过滤选项或使用箭头键导航。
- 按 Enter 或点击选择一个选项。
- 按 Escape 关闭菜单而不选择。
可用选项包括:
- 标题
- 列表
💡 使用关键词快速找到选项。例如,输入 /ul
以找到无序列表。
Examples
Plate UI
参考上面的预览。
Plate Plus
Plugins
SlashPlugin
Options
Collapse all
- Default:
- Default:
'/'
- 默认:
/^\s?$/
创建组合框输入元素的函数。
() => ({
children: [{ text: '' }],
type: SlashInputPlugin.key,
});
触发斜杠命令组合框的字符。
匹配触发斜杠命令组合框之前的字符的正则表达式。
SlashInputPlugin
斜杠输入功能的插件。