此类处理 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() | 将特定脚本添加到脚本加载器的加载队列中。 |
|
getScriptAttributes() | 返回加载指定 URL 时应添加到 script 标签的属性。 |
|
isDone() | 返回脚本是否已加载的布尔值。 |
|
loadQueue() | 开始加载队列。 |
|
loadScript() | 直接加载特定脚本,而不将其添加到加载队列。 |
|
loadScripts() | 加载指定的文件队列,并在加载完成后执行回调。此方法通常在此类外部不使用,但在某些场景下可能有用。 |
|
markDone() | 标记特定脚本为已加载。如果脚本在脚本加载器外部加载,或要跳过加载某些脚本,此方法可能有用。 |
|
方法
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。