在react native (hook)中传递JSON数据到下一页



我正在学习反应。我用的是钩子函数。没有json数据翻转使用钩子函数的例子,所以我留下一个问题。

我想传递group_id, json数据之一,到下一页。

function HomeScreen({navigation, route}) {
const [loading, setLoading] = useState(true);
const [localItem, setLocalItem] = useState([]);
useEffect(() => {
fetch("http://103.51.240.53:8000/GetBestSeller")
.then((response) => response.json())
.then((localItem) => {
setLocalItem(localItem)
setLoading(false)
})
.catch(function(error) {
console.log('There has been a problem with your fetch operation: ' + error.message);
// ADD THIS THROW error
throw error;
});
})

<FlatList style={{backgroundColor:'block', opacity: 1}}
horizontal={true}
data={localItem}
renderItem={({item, index}) => 
<TouchableOpacity 
onPress={()=>navigation.navigate('Hot', itemID: item.group_id)}
style={{marginLeft: 10, alignItems: 'center', marginRight:10}}>

<View style={{width: '100%', backgroundColor: '#02ad94', opacity: 0.5}}></View>
<Text style={{color: 'white', fontWeight: 'bold', fontSize:25, marginTop: 20}}>{item.name}</Text>
</TouchableOpacity>
}
keyExtractor={item => item.group_id}>
</FlatList>

这是第一页。

const Hot = ({route}) => {
const { itemId }          = route.params;
const { otherParam }      = route.params;
return (
<View>
<Text style={styles.carouselText}>{itemID: item.group_id}</Text>
</View>
)
}

这是第二页

我试着用"navigation绕过它。导航('热点',itemID: item.group_id)"但是没有成功。

我不认为navigation.navigate('Hot', itemID: item.group_id)是有效的javascript语法

改为try -

navigation.navigate('Hot', {itemID: item.group_id})

javascript对象被包装在{}

react导航文档中有一个例子正好涵盖了这一点。——链接

相关内容

  • 没有找到相关文章

最新更新