此类负责加载插件及其语言包。ThemeManager 和 PluginManager 是 AddOnManager 的实例,用于管理主题和插件。
摘要
方法
| 名称 | 摘要 | 定义者 |
|---|---|---|
add() | 通过插件的短名称添加一个插件实例。 |
|
get() | 通过短名称返回指定的插件。 |
|
load() | 从特定 URL 加载插件。 |
|
requireLangPack() | 为指定插件加载语言包。 |
|
方法
add()
add(id: String, addOn: tinymce.Theme | tinymce.Plugin): tinymce.Theme | tinymce.Plugin
通过插件的短名称添加一个插件实例。
示例
// 创建一个简单的插件
const TestPlugin = (ed, url) => {
ed.on('click', (e) => {
ed.windowManager.alert('Hello World!');
});
};
// 使用 add 方法注册插件
tinymce.PluginManager.add('test', TestPlugin);
// 初始化 TinyMCE
tinymce.init({
...
plugins: '-test' // 初始化插件但不尝试加载它
});参数
id (String)- 插件的短名称/ID。addOn (Theme | Plugin)- 要添加的主题或插件。
返回值
Theme- 传入的相同主题或插件实例。Plugin- 传入的相同主题或插件实例。
get()
get(name: String): tinymce.Theme | tinymce.Plugin
通过短名称返回指定的插件。
参数
name (String)- 要查找的插件。
返回值
Theme- 主题或插件实例,或 undefined。Plugin- 主题或插件实例,或 undefined。
load()
load(name: String, addOnUrl: String): Promise
从特定 URL 加载插件。
示例
// 从外部 URL 加载插件
tinymce.PluginManager.load('myplugin', '/some/dir/someplugin/plugin.js');
// 初始化 TinyMCE
tinymce.init({
...
plugins: '-myplugin' // 不再尝试加载它
});参数
name (String)- 要加载的插件的短名称。addOnUrl (String)- 要加载的插件的 URL。
返回值
Promise- 一个 promise,当插件成功加载时解析,如果加载失败则拒绝。
requireLangPack()
requireLangPack(name: String, languages: String)
为指定插件加载语言包。
参数
name (String)- 插件的短名称。languages (String)- 可选的以逗号或空格分隔的语言列表,用于检查是否与名称匹配。