医学道
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
video/src/utils/wfs.ts

53 lines
1.0 KiB

import Taro from '@tarojs/taro'
/** 文件基本信息 */
interface CloudFile {
id: number;
objectId: number;
directoryId: number;
appId: number;
name: string;
object: CloudObject;
createdBy: number;
createdAt: string;
updatedAt: string;
}
/** 文件对象信息 */
interface CloudObject {
id: number;
hash: string;
size: number;
path: string;
thumb: string;
mime: string;
width: number;
height: number;
duration: number;
createdAt: string;
updatedAt: string;
}
const files: Record<number, CloudFile> = Object.create(null)
export function getWfsInfo(id: number):Promise<CloudFile>{
if (Reflect.has(files, id)) {
return Promise.resolve(files[id])
}
return new Promise((resolve, reject) => {
Taro.request({
url: `https://wfs.yaojiankang.top/files/${id}`,
success(res) {
if (res.data.ok) {
files[id] = res.data.data
resolve(res.data.data)
} else {
reject(res.data.msg)
}
},
fail(err) {
reject(err.errMsg)
}
})
})
}