首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在react导航useRoute中使用类型记录和v5

在react导航useRoute中使用类型记录和v5
EN

Stack Overflow用户
提问于 2020-04-15 11:21:02
回答 1查看 3.4K关注 0票数 5

我正在尝试使用useRoute提取如下所示的参数。

代码语言:javascript
运行
复制
  const route = useRoute();
  const { params } = route;
  const {
   id, name,
  } = params;

所有操作都很好,但是linter用下面的错误突出显示了idname

属性'id‘在类型'object’上不存在

我该如何克服这个问题。

EN

回答 1

Stack Overflow用户

发布于 2020-04-16 09:43:10

react-navigation导出了几种实用程序类型,以便在使用钩子和为自己的组件定义道具时更容易使用。它们依赖于您首先为您的导航器定义类型。

假设您有一个有两个屏幕的堆栈,A和B。首先定义每个屏幕的参数是什么:

代码语言:javascript
运行
复制
type StackParamsList = {
  A: undefined;
  B: {
    id: string;
    name: string;
  };
}

在屏幕B中键入useRoute

代码语言:javascript
运行
复制
import { RouteProp } from '@react-navigation/native';

const route = useRoute<RouteProp<StackParamsList, 'B'>>();

route.params.id // OK
route.params.foo // error

有关键入导航堆栈中其他元素的更多细节和示例,请查看react导航文档中的类型检查与类型记录文章。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61227429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档