我正在尝试编写自定义的tinyMCE插件。
尝试以编程方式向窗口中添加元素时出现问题。
我的目标是每次用户单击“添加回复”按钮时,都在现有元素下添加新的“文本框”元素。
我尝试了几种方法来实现这一目标,但似乎无济于事。
我的代码:
const plugin = (editor) => {
var w;
var body_items = [
{
type: 'label',
text: 'Title',
},
{
type: 'textbox',
name: 'title',
size: 40
},
{
type: 'button',
text: 'Add reply',
onclick : (e) => {
body_items.push({
type: 'textbox',
name: 'title',
size: 40
});
}
}
];
var buildBody = function(){
return [{
type: 'container',
layout: 'flow',
items: body_items
}];
}
editor.addButton('dydu-quick-replies', {
text: 'quick replies',
icon: true,
onclick: () => {
w = editor.windowManager.open({
title: 'Quick replies plugin',
body: buildBody(),
onsubmit(e) {
editor.insertContent(e.data.title);
}
});
}
});
};
export default plugin;