React promise返回undefined

时间:2016-10-20 14:50:17

标签: javascript reactjs promise undefined

我有一个返回数组的函数

myfunc: func(){
    myArr = ['hello']
    //does other things

    return myArr;
}

在顶部我调用此函数

this.myfunc();
    }).then((myArr) => {
      this.setState({myArr: myArr});
      console.log(myArr);
    });

为什么myArr会被记录为未定义?当然应该在promise中的状态中设置返回数组的内容吗?

与往常一样,我尝试发布最少的代码,但可以添加更多代码。 我正在尝试使用promises和setState并在响应中更改该状态。出于某种原因,此时尚未定义

1 个答案:

答案 0 :(得分:1)

你的功能没有回复承诺。我认为这样可行:

let p = new Promise(function(resolve, reject)) {
    resolve(['hello']);
}

p.then(function(value) {
    setState({key: value});
    console.log(value);
});