我得到了一个承诺,以回复React本地的提取调用

时间:2017-07-21 06:48:40

标签: reactjs react-native react-native-ios

我希望得到一个json文件。

这是获取功能我正在使用

handleApi(){
    return 
        fetch('https://facebook.github.io/react-native/movies.json')
            .then((response) => response.json())
                .then((responseJson) => {
            return responseJson.movies;
        })
}

在按钮单击事件上调用此函数。

handleSubmit() {
    console.log(
        this.handleApi();
    )

但我获取此Promise 对象而不是预期的数据

  

承诺{_40:0,_65:0,_55:null,_72:null} _40:0_55:null_6​​5:0_72:null__proto__:Object

2 个答案:

答案 0 :(得分:3)

更简化

handleApi(){
    return 
        fetch('https://facebook.github.io/react-native/movies.json')
            .then(response => 
                response.json().then(jsonObj => return jsonObj.movies)
            )
}

然后在handleSubmit

handleSubmit() {
    this.handleApi().then(movies => {
        console.log('Print list of movies:', movies);
    });
)

答案 1 :(得分:0)

请按以下步骤更新您的代码:

handleApi(){
return 
    fetch('https://facebook.github.io/react-native/movies.json')
        .then((response) => response.json())
        .then((responseJson) => {
            return responseJson.movies;
        })
}

handleSubmit() {
 this.handleApi().then(function(movies) {
    console.log('Print list of movies:', movies);
 });
}