刚刚在写uniapp时发现某个网络请求语法有问题
export const http=<T>(options:UniApp.RequestOptions)=>{return new Promise<Data<T>>((resolve,reject)=>{uni.request({...options,// 成功回调success(res){//resolve(res.data as Data<T>)}})})
}
按理说应该是:
function request<T>(options) {return new Promise<T>((resolve, reject) => {uni.request({...options,success: (res) => {// 这里的 resolve 是 Promise 构造函数的参数resolve(res.data as Data<T>);},fail: (err) => {// 这里的 reject 也是 Promise 构造函数的参数reject(err);}});});
}
查了一下,原来在JavaScript中,当函数作为对象的属性值时,通常可以省略 function 关键字和函数名,直接使用简写形式
奇怪的知识又增加了
