我是打字稿的新手,我正在创建一些东西并面临着使用 javascript 时从未发生过的问题。
假设我们有async返回的函数Promise<ResultSet>
interface ResultSet {
status: number; // 0 for success 1 for failure
data?: any;
}
const getDataFromServer = async (parameter: string): Promise<ResultSet> => {
const response = await fetch(<--Prameters-->);
return await response.json();
}
Run Code Online (Sandbox Code Playgroud)
它始终将其值返回为Promise。
并且它需要连接到接口以便某些模块可以使用它。它将使用上面的请求更改全局变量的值。并需要返回操作结果(成功或失败代码)。它是在很多地方使用的行动的结果。
const storeData = async (parameter: string): number => {
const result = await getDataFromServer(parameter);
if (result.status == 0) {
SOME_GLOBAL_VARIABLE.setState({ data: result.data });
}
return result.status;
}
Run Code Online (Sandbox Code Playgroud)
正如您所期望的,上面的函数定义在附近弹出一个错误,async (parameter: string): number因为函数必须返回 Promise,因为它是async函数。所以它需要在下面, …