怎么查网站做站点地图西安千秋网络科技有限公司
web/
2025/9/29 14:33:22/
文章来源:
怎么查网站做站点地图,西安千秋网络科技有限公司,保康网站建设,wordpress自定义菜单设置以下是nuxt3中useFetch的函数签名#xff0c;看起来很长有点乱对不对#xff0c;但这还是我优化格式后的结果#xff0c;不然更难看#xff08;原始的代码是在同一行里显示#xff09;#xff0c;泛型参数部分看红色的左右尖括号里的部分#xff08;各个泛型参数用红色的… 以下是nuxt3中useFetch的函数签名看起来很长有点乱对不对但这还是我优化格式后的结果不然更难看原始的代码是在同一行里显示泛型参数部分看红色的左右尖括号里的部分各个泛型参数用红色的逗号隔开 export declare function useFetchResT void, ErrorT FetchError, ReqT extends NitroFetchRequest NitroFetchRequest, Method extends AvailableRouterMethodReqT ResT extends void ? get extends AvailableRouterMethodReqT ? get : AvailableRouterMethodReqT : AvailableRouterMethodReqT, _ResT ResT extends void ? FetchResultReqT, Method : ResT, DataT _ResT, PickKeys extends KeysOfDataT KeysOfDataT, DefaultT null(request: RefReqT | ReqT | (() ReqT), opts?: UseFetchOptions_ResT, DataT, PickKeys, DefaultT, ReqT, Method): AsyncDataPickFromDataT, PickKeys | DefaultT, ErrorT | null; 这里重点通过类型推导说明为什么ResT 就一定是useFetch的返回类型 首先看最后一行的返回值类型 AsyncDataPickFromDataT, PickKeys | DefaultT, ErrorT | null
这也是一个泛型首先不考虑外围AsyncData的包装它直接跟PickFrom里面的有关系
从字面意思也可以理解到PickFrom是从DataT类型中挑选出key值为PickKeys所对应的类型
那么基本可以断定AsyncData的类型最终跟DataT的类型有关 而泛型参数列表中有个定义DataT _ResT就是说DataT类型取决于_ResT
而_ResT ResT extends void ? FetchResultReqT, Method : ResT
这句话的意思是如果ResT类型为空则_ResT类型为FetchResultReqT, Method否则_ResT类型就是ResT 一句话_ResT类型取决于ResT的类型。
所以根据链式关系 DataT 》 _ResT 》 ResT可以得出 DataT类型取决于 ResT的类型
而AsyncData的类型最终跟DataT的类型有关所以AsyncData类型也取决于ResT的类型
所以ResT的类型就是useFetch函数的返回类型
但这还不够需要继续深挖证明这个结论》AsyncData的类型取决于DataT的类型
对于PickFromDataT, PickKeys,我们不去深究这个基本可以判断必定取决于DataT类型
重点要看AsyncData部分的定义 export interface _AsyncDataDataT, ErrorT { data: RefDataT; pending: Refboolean; refresh: (opts?: AsyncDataExecuteOptions) PromiseDataT; execute: (opts?: AsyncDataExecuteOptions) PromiseDataT; error: RefErrorT | null; status: RefAsyncDataRequestStatus; } export type AsyncDataData, Error _AsyncDataData, Error Promise_AsyncDataData, Error; 从上面的代码可以看到AsyncData取决于_AsyncData而_AsyncData的类型的真正数据是data属性而data正是AsyncData的第一个泛型参数Data, 而Data相当于上面的
PickFromDataT, PickKeys | DefaultT 这个值直接跟DataT类型有关
所以这里就证明了 AsyncData的类型确实取决于DataT的类型而 DataT类型又取决于 ResT的类型所以 AsyncData的类型最终取决于ResT的类型而AsyncData是useFetch函数返回值类型那么可以推断出》ResT类型就是useFetch函数的返回值类型
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/83938.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!