首先要在tsconfig.json中配置ES2015.promise的lib 不然ts無法支持promise
接下來隨便定義一個異步函數
export default function login() { return new Promise(resolve => { axios.get('url', param).then(res => { resolve(res); }); }); }
然后用ts聲明文件定義期望返回的數據類型
declare namespace Service {
interface login { id: string name: string date: Date } }
再結合之前的異步函數
export default function login(): Promise<Service.login> { return new Promise(resolve => { axios.get('url', param).then(res => { resolve(res); }); }); }
只是多了個promise返回值定義,但可以從then方法中看到返回值的代碼提示了,還是很方便的