【问题标题】:How to transform dwr callbacks into rest fetch with promises?如何将 dwr 回调转换为带有承诺的 rest fetch?
【发布时间】:2019-03-18 23:11:35
【问题描述】:

这是将 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() 调用,它也可以工作。

如果我删除 (resolve, reject) 箭头函数包装器,它也可以工作(渲染函数用一些选项填充选择),但它在控制台中显示错误:“promise resolver undefined is not a function”

所以即使它可以正常工作,我认为我没有正确使用 Promises API。

对我做错了什么有什么建议吗?

谢谢,

贡萨洛

【问题讨论】:

    标签: javascript callback


    【解决方案1】:

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

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

    【讨论】:

    猜你喜欢
    • 2018-05-04
    • 2022-12-19
    • 2014-12-02
    • 2020-06-02
    • 2017-07-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多