使用多个功能链实现Javascript承诺

时间:2017-11-03 11:46:16

标签: javascript reactjs asynchronous promise

我有3个功能:

我的API文件中有一个:

updateAPIFunction: (id, label) => {
    return new Promise(resolve => {
      window.setTimeout(function () {
        resolve();
      }, 3000);
    });
  }

容器中的一个React组件:

updateParentFunction(id, label) {
    controller.updateAPIFunction(id, label).then(a => {
      return a;
    });
  }

最后一个在无状态组件中,从父容器传递:

this.props.updateParentFunction(id, label).then(result => {
      console.log('done')
    })

我从无状态控制器调用函数,执行函数(api调用没有问题),但我的无状态组件返回:

Cannot read property 'then' of undefined

我不完全确定如何做到这一点。 我的第二个功能是否也会回复承诺?

我需要这样做,因为无状态组件将由具有不同API的多个父组件重用。

1 个答案:

答案 0 :(得分:1)

您错过了Yii1中的return关键字:

updateParentFunction