React Native TypeScript:为何出现双重is_verified?如何改为单次访问?
解决方法
有两种实用方案可以让你只需访问一次is_verified:
方案1:解构组件入参
在定义组件时直接解构参数对象,就能直接使用is_verified变量,无需通过对象嵌套访问:
interface CurrentUser { is_verified?: boolean; // 其他属性... } const Verified = ({ is_verified }: Pick<CurrentUser, 'is_verified'>) => { return <div>{is_verified ? '已验证' : '未验证'}</div>; };
方案2:直接使用属性类型作为参数类型
如果组件仅依赖is_verified这个属性值,不需要接收整个对象,可以直接将参数类型指定为CurrentUser['is_verified']:
interface CurrentUser { is_verified?: boolean; // 其他属性... } const Verified = (is_verified?: CurrentUser['is_verified']) => { return <div>{is_verified ? '已验证' : '未验证'}</div>; }; // 调用示例 <Verified is_verified={user.is_verified} />
内容的提问来源于stack exchange,提问作者universe11
相关产品推荐
相关产品推荐

