【发布时间】:2021-01-03 16:46:28
【问题描述】:
我的目标:
我正在尝试添加 Typescript 类型,但遇到了 route.params.fullName 的问题。当我console.log(route.params) 时,对象{ fullName: 'John Smith' } 被记录。为什么 Typescript 与 fullName 存在问题?
奇怪的是代码有效,当我导航到屏幕时,标题标题更新为route.params.fullName。
错误:
Property 'fullName' does not exist on type 'object'.
功能组件:
// React Hooks: React Navigation
const route = useRoute();
// React Hooks: Lifecycle Methods
useEffect(() => {
console.log(route.params);
// React Navigation: Set Options
props.navigation.setOptions({
// ISSUE HERE
title: route.params.fullName,
});
}, [props.navigation, route.params]);
【问题讨论】:
-
这是 react-navigation 的错,他们没有输入 route.params 而是给了它一个
object类型,这实际上迫使你做你自己的类型断言。
标签: typescript react-native types routes react-navigation