我尝试使用JavaScript承诺或异步/等待(或类似)来填充表单,但似乎无法获得它。我尝试import ExecutionEnvironment from 'exenv';
if (ExecutionEnvironment.canUseDOM) {
require("third-party-file.js");
}
和.then
的结果相同:如果其中一个"得到"函数占用的时间比getPunchlistItem函数长,实际值会被覆盖。
Promise.all
我的异步功能如下:
var myFSEs = [];
var myTypes = [];
var myPeople = [];
$(document).ready(function () {
getFSEs("itemFSE", "Select FSE...")
.then(getPersons("itemResponsible", "Select Person..."))
.then(getTypes("itemType", "Select Type..."))
.then(getPunchlistItem(myPLItemID));
//or
Promise.all([getFSEs("itemFSE", "Select FSE..."), getPersons("itemResponsible", "Select Person..."), getTypes("itemType", "Select Type...")]).then(function () {
getPunchlistItem(myPLItemID);
});
});
我错过了什么?
答案 0 :(得分:0)
以下是我提出的解决方案:
jpeg
我的“获取”功能如下所示:
var myFSEs = [];
var myTypes = [];
var myPeople = [];
$(document).ready(function () {
(async () => {
await getFSEs("FSEs", "All FSEs");
await getPersons("Persons", "All Personnel");
await getTypes("itemType", "Select Type...");
getPunchlistItem(myPLItemID);
})() // async
});