0

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

对于每种类型,我都有一个tinymce.init({ }),并且在每种类型中,我都使用带有 paste_preprocess 函数的粘贴插件。由于我对所有 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() {}

非常感谢您的时间。

4

1 回答 1

0

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

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

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

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

然后,您可以将真正的粘贴逻辑放入myFunction(editor, fragment)其中,只要该功能在运行时页面上存在,一切都会起作用。

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

于 2017-02-22T17:38:56.247 回答