如何将声明的函数添加到tinymce.init中

时间:2017-02-21 16:30:14

标签: javascript tinymce tinymce-plugins

我正在尝试为我所拥有的不同类型的tinyMCE重用一些代码(简单,高级,专家......)。

对于每种类型,我都有一个tinymce.init({ }),并且在每个类型中我都使用带有paste_preprocess函数的paste插件。由于我对所有tinymce.init使用相同的函数,我试图将我的函数声明为正常函数:

function myFunction(pl, o) { ... }

然后在tinynmce.init中使用它,如下所示:

tinymce.init({
    ...
    paste_preprocess : myFunction(pl, o)
});

但它不起作用......

我见过的唯一配置通常是:

tinymce.init({
...
    paste_preprocess: function(pl, o) { ... }
});

所以,匿名函数,我是对的吗?

有没有办法用声明的函数来实现它,或者这只是通常的做法 paste_preprocess: function() {}

非常感谢你的时间。

1 个答案:

答案 0 :(得分:0)

实际的配置选项需要一个匿名函数,所以如果你想要外化你的函数,你可以这样做:

paste_postprocess: function(editor, fragment) {
    myFunction(editor, fragment);
}

在其他地方,您可以定义要运行的功能:

function myFunction(editor, fragment) {
    console.log('myFunction called!');
}

然后你可以把真正的粘贴逻辑放在myFunction(editor, fragment)中,只要在运行时该页面上存在该函数就可以了。

这将允许您在具有一个配置时根据需要加载不同的处理功能。