我在 React 应用程序中使用 Jodit 编辑器。 现在我需要工具栏中的自定义按钮将文本片段插入编辑器。 这一切都很好。
我有一个带有自定义图标的按钮,在其右侧有一个 V 形图标,可以打开和折叠我的下拉菜单。
我不明白的是,如何使我的自定义按钮更像标准段落按钮。段落按钮也有 V 形图标,但无论单击何处,它总是会打开下拉菜单。
所以我的 extraButton-Config 包含这个:
{
name: "Textbausteine",
icon: "dots",
list: textModules.map((module) => module.name),
tooltip: "Textbaustein einfügen",
exec: (
jodit: IJodit,
_current: Nullable<Node>,
options: {
button: IToolbarButton;
control: IControlType<IJodit>;
originalEvent: Event;
},
) => {
if (options.control.args) {
const moduleIndex = options.control.args?.at(1);
jodit.selection.insertHTML(textModules[moduleIndex].content);
}
else {
// open dropdown
}
},
}
我尝试了
jodit.selection.expandSelection()
但什么也没发生。
有人知道如何在工具栏中打开下拉菜单吗?
我也在寻找如何解决这个问题,如果没有找到参数就需要返回 false
extraButtons: [
{
name: 'Custom Variables',
component: 'select',
tooltip: 'A list of custom variables that will be dynamically inserted to template',
list: customVariables,
childTemplate: (_editor: any, key: 'name' | 'email' | 'phone') =>
`<span>${customVariables[key].label}</span>`,
exec: (editor: any, _: any, { control }: any) => {
const value = control?.args?.[1]?.value;
if (value) editor?.s?.insertHTML(value);
},
},
]