此类处理 JavaScript 文件的异步/同步加载,它会在各种项加载完成时执行回调。此类用于加载外部 JavaScript 文件。

示例

// 使用全局脚本加载器从特定 URL 加载脚本
tinymce.ScriptLoader.load('somescript.js');

// 使用脚本加载器的唯一实例加载脚本
const scriptLoader = new tinymce.dom.ScriptLoader();

scriptLoader.load('somescript.js');

// 加载多个脚本
scriptLoader.add('somescript1.js');
scriptLoader.add('somescript2.js');
scriptLoader.add('somescript3.js');

scriptLoader.loadQueue().then(() => {
  alert('所有脚本现已加载。');
});

摘要

方法

名称摘要定义者

add()

将特定脚本添加到脚本加载器的加载队列中。

ScriptLoader

getScriptAttributes()

返回加载指定 URL 时应添加到 script 标签的属性。

ScriptLoader

isDone()

返回脚本是否已加载的布尔值。

ScriptLoader

loadQueue()

开始加载队列。

ScriptLoader

loadScript()

直接加载特定脚本,而不将其添加到加载队列。

ScriptLoader

loadScripts()

加载指定的文件队列,并在加载完成后执行回调。此方法通常在此类外部不使用,但在某些场景下可能有用。

ScriptLoader

markDone()

标记特定脚本为已加载。如果脚本在脚本加载器外部加载,或要跳过加载某些脚本,此方法可能有用。

ScriptLoader

方法

add()

add(url: String): Promise

将特定脚本添加到脚本加载器的加载队列中。

参数

  • url (String) - 要添加的脚本的绝对 URL。

返回值

  • Promise - 脚本成功加载时解析,失败时拒绝的 Promise。


getScriptAttributes()

getScriptAttributes(url: String): Object

返回加载指定 URL 时应添加到 script 标签的属性。

参数

  • url (String) - 要获取属性的 URL。

返回值

  • Object - 包含要添加到 script 标签的属性的对象。


isDone()

isDone(url: String): Boolean

返回脚本是否已加载的布尔值。

参数

  • url (String) - 要检查的 URL。

返回值

  • Boolean - URL 是否已加载的布尔值。


loadQueue()

loadQueue(): Promise

开始加载队列。

返回值

  • Promise - 所有队列项加载完成时解析,或因加载失败而拒绝的 Promise。


loadScript()

loadScript(url: String): Promise

直接加载特定脚本,而不将其添加到加载队列。

参数

  • url (String) - 要添加的脚本的绝对 URL。

返回值

  • Promise - 脚本成功加载时解析,失败时拒绝的 Promise。


loadScripts()

loadScripts(scripts: Array): Promise

加载指定的文件队列,并在加载完成后执行回调。此方法通常在此类外部不使用,但在某些场景下可能有用。

参数

  • scripts (Array) - 要加载的队列项数组。

返回值

  • Promise - 所有脚本加载完成时解析,或因加载失败而拒绝的 Promise。


markDone()

markDone(url: String)

标记特定脚本为已加载。如果脚本在脚本加载器外部加载,或要跳过加载某些脚本,此方法可能有用。

参数

  • url (String) - 要标记为已加载的脚本的绝对 URL。