如何正确推断xxx
型到data
型?
限制:
- 包装器参数应该只接受
Promise<{ xxx: Data; }>
-当前有效. - 只能更改包装器
function wrapper<
Data,
A extends Promise<{ xxx: Data; }>,
>(a: A): Promise<{ data: Data }> {
return 1 as any
}
async function a(): Promise<{ xxx: string }> {
return { xxx: 'a' }
}
wrapper(a()).then(res => {
const data: string = res.data // is unknown, how to make it infer string?
})