我正在尝试使用 React Navigation 的route.params 将变量从一个屏幕传递到另一个屏幕。
我已经在它前面的屏幕上正常工作了,但在下一个屏幕上却失败了,我不明白为什么。
这是代码:
setTimeout(() => {
console.log('here is the hid: ' + results.data.hid);
navigation.navigate('MainHome', {
hid: results.data.hid,
});
}, 2500);
Run Code Online (Sandbox Code Playgroud)
控制台日志在控制台中正确显示正确的数据。此代码将导致下一个屏幕:
function Home({route, navigation}) {
const hid = route.params;
const [results, setResults] = useState([]);
const [errorMessage, setErrorMessage] = useState('');
const [loading, setLoading] = useState('loading');
console.log('Here is the hid that is retrieved from the route params on home:' + hid);
Run Code Online (Sandbox Code Playgroud)
此控制台日志显示 hid 为未定义。
以下是引用屏幕的扩展代码:
function IntroOne({route, navigation}) {
const [results, setResults] = useState([]);
const [errorMessage, setErrorMessage] = …Run Code Online (Sandbox Code Playgroud)