这是将DWR调用转换成我想转换的回调的旧代码:

BpmAjaxControllerDwr.getEvents(businessUnit, objectTypeId, {
        callback : function(objectList) {
            eventSelectView.render(objectList);
        }


这就是我已经在工作的东西。之前的参数现在是url参数,它只是从其余API中获取json:

fetch(url)
        .then(response => response.json())
        .then(objectList => new Promise((resolve, reject) => eventSelectView.render(objectList)));


但是我很怀疑:

如果我在promise中的render调用之后添加resolve()调用,它也可以工作。

如果删除(解析,拒绝)箭头函数包装,它也可以工作(呈现函数使用一些选项填充选择),但在控制台中显示错误:“未定义的Promise解析器不是函数”

因此,即使其正常工作,我也认为我没有正确使用Promises API。

关于我在做什么错的任何建议吗?

谢谢,

贡扎洛

最佳答案

这就是我最终这样做的方式:

fetch(url)
        .then(response => response.json())
        .then(objectList => eventSelectView.render(objectList));

09-17 18:02