消费使用useAuth的user ts问题

来源:7-4 用useAsync获取用户信息

慕瓜5414566

2021-08-15

老师想到一个问题 

 在这边auth-context.tsx是写如果有user资料才返回AuthContext.Provider组件

照理说下面的子组件页面,使用useAuth消费取得user照理说都会是有data的 

 不过每页ts还是要判断user有东西才能访问不然会ts报错(user可能为null) 

 这个ts问题是有办法的解决的吗?还是说这个ts约束只能这样没办法

写回答

1回答

Nolan

2021-08-19

你说的有道理,但是ts没那么智能。假如你说的这些是写在一起的,比如:

let a: number|undefined

if(!a){

 return 

}

// 这里的a确实是number类型

console.log(a)

但是auth-context.tsx里,user已经定了类型了,在使用user的时候它的类型就是 User|null

user: User | null;


0
1
慕瓜5414566
知道了谢谢老师,写在一起的ts才有办法判断就对了
2021-08-22
共1条回复

React17+Hook+TS4 优质实践,仿 Jira 企业级项目

解锁 React17 高阶用法,轻松应对大型复杂长周期项目

2691 学习 · 1236 问题

查看课程