[我不断收到错误消息,提示“字符串”不能分配给反应本机打字稿中“从不”类型的参数,我不知道为什么。有人可以帮我修复这个错误吗?
先感谢您。
代码片段:
const loadReport = (id: string) => {
setPostId(id);
navigation.navigate('Report', {postId: id});
}
我在“报告”下看到一条下划线。
这是一个奇怪的问题,发生在 RN > 0.65 中。
我的解决方案:
1.- 进口:
{/* Depends of your Package (Stack or NativeStack...) */}
import { StackNavigationProp } from '@react-navigation/stack';
import { useNavigation } from '@react-navigation/core';
2.- 定义类型
export type RootStackParamList = {
YourScreen: { id: number } | undefined;
};
3.- 分配类型为 StackNavigationProp 的 useNavigation 挂钩。
const navigation = useNavigation<StackNavigationProp<RootStackParamList>>();
4.- 使用它! (眼睛:使用此类型您可以访问导航对象)
<TouchableOpacity
// Use this when you pass a parameter (is optional)
onPress={() => navigation.navigate('YourScreen', {id: 5})}>
</TouchableOpacity>
5.- 请记住以下注意事项:
从...获取:https://reactnavigation.org/docs/typescript/#annotating-usenavigation https://reactnavigation.org/docs/typescript/#annotating-usenavigation
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)