| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- // 全局要用的类型放到这里
- declare global {
- interface IResData<T> {
- code: number
- msg: string
- data: T
- }
- // uni.uploadFile文件上传参数
- interface IUniUploadFileOptions {
- file?: File
- files?: UniApp.UploadFileOptionFiles[]
- filePath?: string
- name?: string
- formData?: any
- }
- interface IUserInfo {
- nickname?: string
- avatar?: string
- /** 微信的 openid,非微信没有这个字段 */
- openid?: string
- }
- interface IUserToken {
- token: string
- refreshToken?: string
- refreshExpire?: number
- }
- }
- // 扩展 @uni-helper/vite-plugin-uni-pages 的 definePage 参数类型
- declare module '@uni-helper/vite-plugin-uni-pages' {
- interface UserPageMeta {
- /**
- * 使用 type: "home" 属性设置首页,其他页面不需要设置,默认为page
- *
- * 尽量保证一个项目 只有一个 这个配置,如果有多个,会按照字母顺序来排列,最终可能不是您想要的效果。
- */
- type?: 'home'
- /**
- * 页面布局类型, 模板默认只有 default, 如果在 src/layouts 下新增了 layout, 可以扩展当前属性
- * @default 'default'
- *
- * 当前属性供 https://github.com/uni-helper/vite-plugin-uni-layouts 插件使用
- */
- layout?: 'default'
- /**
- * 是否从需要登录的路径中排除
- *
- * 登录授权(可选):跟以前的 needLogin 类似功能,但是同时支持黑白名单,详情请见 src/router 文件夹
- */
- excludeLoginPath?: boolean
- }
- }
- // patch uni 类型
- // 1. 补全 uni.hideToast() 的 options 类型
- // 2. 补全 uni.hideLoading() 的 options 类型
- // 3. 使用方式见:https://github.com/unibest-tech/unibest/pull/241
- declare global {
- declare namespace UniNamespace {
- /** 接口调用结束的回调函数(调用成功、失败都会执行) */
- type HideLoadingCompleteCallback = (res: GeneralCallbackResult) => void
- /** 接口调用失败的回调函数 */
- type HideLoadingFailCallback = (res: GeneralCallbackResult) => void
- /** 接口调用成功的回调函数 */
- type HideLoadingSuccessCallback = (res: GeneralCallbackResult) => void
- interface HideLoadingOption {
- /** 接口调用结束的回调函数(调用成功、失败都会执行) */
- complete?: HideLoadingCompleteCallback
- /** 接口调用失败的回调函数 */
- fail?: HideLoadingFailCallback
- test: UniNamespace.GeneralCallbackResult
- /**
- * 微信小程序:需要基础库: `2.22.1`
- *
- * 微信小程序:目前 toast 和 loading 相关接口可以相互混用,此参数可用于取消混用特性
- */
- noConflict?: boolean
- /** 接口调用成功的回调函数 */
- success?: HideLoadingSuccessCallback
- }
- // ----------------------------------------------------------
- /** 接口调用结束的回调函数(调用成功、失败都会执行) */
- type HideToastCompleteCallback = (res: GeneralCallbackResult) => void
- /** 接口调用失败的回调函数 */
- type HideToastFailCallback = (res: GeneralCallbackResult) => void
- /** 接口调用成功的回调函数 */
- type HideToastSuccessCallback = (res: GeneralCallbackResult) => void
- interface HideToastOption {
- /** 接口调用结束的回调函数(调用成功、失败都会执行) */
- complete?: HideToastCompleteCallback
- /** 接口调用失败的回调函数 */
- fail?: HideToastFailCallback
- /**
- * 微信小程序:需要基础库: `2.22.1`
- *
- * 微信小程序:目前 toast 和 loading 相关接口可以相互混用,此参数可用于取消混用特性
- */
- noConflict?: boolean
- /** 接口调用成功的回调函数 */
- success?: HideToastSuccessCallback
- }
- }
- interface Uni {
- /**
- * 隐藏 loading 提示框
- *
- * 文档: [http://uniapp.dcloud.io/api/ui/prompt?id=hideloading](http://uniapp.dcloud.io/api/ui/prompt?id=hideloading)
- * @example ```typescript
- * uni.showLoading({
- * title: '加载中'
- * });
- *
- * setTimeout(function () {
- * uni.hideLoading();
- * }, 2000);
- *
- * ```
- * @tutorial [](https://uniapp.dcloud.net.cn/api/ui/prompt.html#hideloading)
- * @uniPlatform {
- * "app": {
- * "android": {
- * "osVer": "4.4.4",
- * "uniVer": "√",
- * "unixVer": "3.9.0"
- * },
- * "ios": {
- * "osVer": "9.0",
- * "uniVer": "√",
- * "unixVer": "3.9.0"
- * }
- * }
- * }
- */
- // eslint-disable-next-line ts/method-signature-style
- hideLoading<T extends UniNamespace.HideToastOption = UniNamespace.HideToastOption>(options?: T): void
- /**
- * 隐藏消息提示框
- *
- * 文档: [http://uniapp.dcloud.io/api/ui/prompt?id=hidetoast](http://uniapp.dcloud.io/api/ui/prompt?id=hidetoast)
- * @example ```typescript
- * uni.hideToast();
- * ```
- * @tutorial [](https://uniapp.dcloud.net.cn/api/ui/prompt.html#hidetoast)
- * @uniPlatform {
- * "app": {
- * "android": {
- * "osVer": "4.4.4",
- * "uniVer": "√",
- * "unixVer": "3.9.0"
- * },
- * "ios": {
- * "osVer": "9.0",
- * "uniVer": "√",
- * "unixVer": "3.9.0"
- * }
- * }
- * }
- */
- // eslint-disable-next-line ts/method-signature-style
- hideToast<T extends UniNamespace.HideLoadingOption = UniNamespace.HideLoadingOption>(options?: T): void
- }
- }
- export {} // 防止模块污染
|