假设代码块按需加载模块,如下所示:
let tbls = document.querySelectorAll("div.magic-table");
if(tbls) {
import('./magic-table.js')
.then(module => {
L.magictables = module.magictables;
tbls.forEach(o => {
L.magictables.init(o);
});
})
.catch(err => {
console.error("Unable to load magic-table.js: " + err.message);
});
}
想象一下,序列中有几个这样的人;它们在搜索什么标记/类、加载什么模块以及初始化过程中的一些额外步骤方面有所不同,但总体上它们是相同的,并且是独立的。
现在假设您需要引入一个可能依赖于其他模块的新块。i. e.
我对javascript知之甚少,对异步javascript几乎一无所知,所以我不知道如何做到这一点。我想象的是这样的:
在任何模块加载块之前,创建一个名为promises
的数组。每次激活作为依赖项的模块时,它都会创建一个promise,并将其添加到promise
列表中。一旦该模块完成,它就会“触发”promise(我不知道如何做到这一点,但在概念上):
let tbls = document.querySelectorAll("div.magic-table");
if(tbls) {
let promise = new MyMagicPromise();
promises.push(promise);
import('./magic-table.js')
.then(module => {
L.magictables = module.magictables;
tbls.forEach(o => {
L.magictables.init(o);
});
promise.trigger();
})
}
就在依赖于其他可选模块的模块之前,这样做是为了创建一个屏障,所有之前的模块都必须完成初始化:
promises.forEach(p => {
await p;
});
是否已经有一些现成的机制可以在javascript中实现这一点?如果不是的话,我的想象会起作用吗?
我无法将依赖模块加载到另一个块的then()
,因为依赖块可能依赖于多个其他模块(如果使用)。
还有:纯javascript;没有框架。
我真的不明白你。。。但我想我知道你想要什么。您使外部函数异步
(async () => {
let module1 = (await import("...")).default
let module2 = (await import("...")).default
})()
这实际上是使用async按顺序导入模块的基本方法
我已经尝试阅读了异步方法,现在正尝试创建自己的异步方法。该方法是返回错误日志列表的webservice调用。我不确定我是否理解正确,所以我想我应该分享我的代码,看看我是否应该做些不同的事情。 所有我想要的代码做的是返回一个错误日志列表通过调用方法GetAllErrorLogs(),这是一个同步的方法。因为获取所有错误日志可能需要一秒钟的时间,所以我希望在调用GetAllErrorLogs()方法后
问题内容: 你好,我有这个设置 我需要为每个按钮获取以下内容 在Java中是否可以为我声明的每个按钮动态创建此按钮?因为当我有5个按钮时,我不需要3x5 = 15行代码,而是只有几行具有动态创建的按钮。 问题答案: 编写一个小循环并将您的按钮存储在数组中:
你好,我已经准备好了 我需要为每个按钮获得以下内容 在Java中,是否可以为我声明的每个按钮动态创建它?因为当我有5个按钮时,我不希望3x5=15行代码,而只希望有几行动态创建的按钮。
问题内容: 给定一个类名,我想动态创建一个Groovy类,向其添加属性和方法。我使用创建新类 对于我使用的方法 其中it.key是字符串(方法名),it.value是闭包。这很方便,因为我可以指定方法参数类型并进行类型检查。但是,如果不给它赋值,就无法指定动态创建的属性类型。我可以通过显式定义属性的getter和setter来解决此问题。这可行,但是metaClass.name = value或m
问题内容: 我在mysql上创建数据库。首先创建主体表,每个表平均有30列。日志表的标准是引用表的pk加上每列*2。像这样: 参考表: 日志表: 现在,我想要创建一个过程,在该过程中,我将表名作为参数传递,并生成表日志查询并执行它。 做这个的最好方式是什么? 问题答案: 为了使一个字符串代表一个表(或数据库)名称,您将需要用变量连接查询字符串,并在存储过程中准备/执行一条语句。这是一个基本示例。
问题内容: 我陷入GWT CellTable的问题。我需要动态创建单元表,而我没有实体(Bean)类。我已经看到了所有celltable的示例,并且在没有实体类的情况下进行了大量搜索。 我需要根据数据库中存储的一些元数据动态填充表。我可以创建表结构 考虑有两个类,一个是GRID,另一个是COLUMN,用于元数据和列定义。GRID将具有COLUMNS的列表作为列定义 现在,我需要从数据库中获取网格并