[英]How to get a nested and optional object value with a default value and define type?
应该是一个简单的......我只想得到data.user.roles
,但data
可能是空的。 在这种情况下,我需要一个空数组作为结果。 我还需要定义user
的类型——在这种情况下是any
。 所以这就是我想出的:
const { data } = useSession()
const user: any = data?.user || {} // define user
const roles = user?.roles || []
它有效,但感觉不是很聪明。
而且我不太确定,如果useSession
不返回完整数据集,这是否可行:
type Session = {
data: {
user?: {
roles?: string[]
}
}
}
const {
data: {
user: { roles = [] }
}
}: Session = useSession()
根据Session
类型保证data
存在,所以你不需要?
在那之后。 从那里您只需深入研究并在最后提供后备。
const { data } = useSession()
const roles = data.user?.roles ?? []
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.