Typescript 函数如何返回一个类型的属性?

例如我定义了一个对象

interface IUser {
    name: string
    age: number
    hobby: {
        name: string
        durationTime: string
        reason: string
    }
}

定义个一个函数,返回的类型是 hobby 类型,如果不把 hobby 提取出去单独声明,有没有方法可以实现代码

const getHobby = (params: {userId: number}): Promise<IUser.hobby> {
    const user = await api.getUserById(...)
    return user.hobby
}

以上部分的 Promise<IUser.hobby> 应该替换成什么?

阅读 1.6k
1 个回答

前两天刚遇到

IUser["hobby"]

即可

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
Microsoft
子站问答
访问
宣传栏