首页 > 解决方案 > 如何在函数中返回获取结果

问题描述

我想将结果从 fetch 返回到此函数中的另一个,以将数据返回到对此类和函数的原始调用。但我得到这个错误:Type 'Promise<any>' is missing the following properties from type 'String[]': length, pop, push, concat, and 28 more.

export default class GetApiData {
    static getThemeParkData(): Array<String> {
        return fetch(
            url,
            {
                method: 'GET',
                headers: {
                    Accept: 'application/json',
                    'Content-Type': 'application/json'
                }
            }
        )
        .then((response) => { 
            return response.json()
        })
    }
}

标签: typescriptreact-native

解决方案


JB Nizet 是对的,您应该更改方法的返回类型。

Array<String>Promise<String[]>甚至Promise<any>

export default class GetApiData {
  static getThemeParkData(): Promise<any> {
    return fetch(
        url,
        {
            method: 'GET',
            headers: {
                Accept: 'application/json',
                'Content-Type': 'application/json'
            }
        }
    )
    .then((response) => { 
        return response.json()
    })
  }
} 

推荐阅读