uni-app @dcloudio/types中cloud.d.ts文件缺少返回类型导致报错
uni-app @dcloudio/types中cloud.d.ts文件缺少返回类型导致报错
产品分类:其他/5+ SDK
操作步骤:
如图
预期结果:
如图
实际结果:
如图
bug描述:
在@dcloudio/types中缺少必要的返回类型,导致eslint检查报错
ERROR in D:/project/ccqlk-dx/ccqlk-dx-web-vue-app/node_modules/[@dcloudio](/user/dcloudio)/types/uni-app/cloud.d.ts(2576,9):
2576:9 'addInterceptor', which lacks return-type annotation, implicitly has an 'any' return type.
2574 |
2575 | on(eventName: string, callbaack: (result: any) => void): any;
2576 | addInterceptor(apiName: string, interceptor: (result: any) => void);
2577 | removeInterceptor(apiName: string, interceptor?: (result: any) => void);
2578 | }
2579 |
2576 | addInterceptor(apiName: string, interceptor: (result: any) => void);
| ^
2577:9 'removeInterceptor', which lacks return-type annotation, implicitly has an 'any' return type.
2575 | on(eventName: string, callbaack: (result: any) => void): any;
2576 | addInterceptor(apiName: string, interceptor: (result: any) => void);
2577 | removeInterceptor(apiName: string, interceptor?: (result: any) => void);
| ^
2578 | }
2579 |
Version: typescript 4.3.5
Time: 7689ms

更多关于uni-app @dcloudio/types中cloud.d.ts文件缺少返回类型导致报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
5 回复
居然没人理
更多关于uni-app @dcloudio/types中cloud.d.ts文件缺少返回类型导致报错的实战教程也可以访问 https://www.itying.com/category-93-b0.html
官方有人修复下吗?
那么久了,都好几个版本了,就是没人来修改下呀???
没人改,这个玩意儿还用不用啊?
这是一个类型定义文件的问题。在 @dcloudio/types 包的 cloud.d.ts 文件中,addInterceptor 和 removeInterceptor 方法确实缺少明确的返回类型声明。
根据错误信息,这两个方法目前定义为:
addInterceptor(apiName: string, interceptor: (result: any) => void);
removeInterceptor(apiName: string, interceptor?: (result: any) => void);
缺少返回类型会导致 TypeScript 编译器将其推断为 any 类型,这在严格类型检查模式下会触发错误。
从 uni-app 云函数的实际使用场景来看,这两个方法通常返回 void(无返回值)。建议将类型定义修改为:
addInterceptor(apiName: string, interceptor: (result: any) => void): void;
removeInterceptor(apiName: string, interceptor?: (result: any) => void): void;

