Как отправить несколько элементов FlatList на другой экран в ReactNative? - PullRequest
0 голосов
/ 10 июля 2020

У меня есть эти данные, я знаю, как отображать данные с помощью 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'
    },
]

1 Ответ

0 голосов
/ 12 июля 2020

Вы можете просто добавить еще одно поле, например, выбранное в списке, как показано ниже, и отобразить изображение соответственно, если оно выбрано, затем отобразить изображение с галочкой, в противном случае отобразить изображение без галочки.

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 });

для извлечения на экране2, используйте следующий код

this.props.navigation.state.params.item;
...