我有此数据,我知道如何使用Flatlist显示数据,但是如何添加多选功能?
用户可以选择多个项目,我如何使用道具将所选项目传递到另一个屏幕?
const goods = [{
key: 1,
item: 'Laptops & accessories'
},
{
key: 2,
item: 'Mobiles & accessories'
},
{
key: 3,
item: 'Television'
},
{
key: 4,
item: 'Washing Machine'
},
{
key: 5,
item: 'Air Conditioners'
},
{
key: 6,
item: 'Refrigerators'
},
]
答案 0 :(得分:0)
您只需按如下所示在列表中添加一个字段即可,如果选择则显示相应的图像,然后显示选中标记图像,否则显示非选中标记图像。
const goods = [{
key: 1,
item: 'Laptops & accessories',
selected: false
},
{
key: 2,
item: 'Mobiles & accessories',
selected: false
},
{
key: 3,
item: 'Television',
selected: false
},
{
key: 4,
item: 'Washing Machine',
selected: false
},
{
key: 5,
item: 'Air Conditioners',
selected: false
},
{
key: 6,
item: 'Refrigerators',
selected: false
},
]
,然后在选择任何项目时,将其设为selected = true
以用于该特定项目。然后,您可以使用该选项将选中的项目作为道具发送到下一个屏幕
this.props.navigation.navigate('screen2', { item });
要在screen2上检索,请使用以下代码
this.props.navigation.state.params.item;