Выбор элементов в React-Native - PullRequest
0 голосов
/ 19 июня 2020

Я хочу выбрать элемент из списка и выделить его. У меня есть функция удаления определенного элемента из массива, я хочу повторно использовать эту функцию, чтобы выделить его.

Данные - это массив объектов. Я хочу использовать хуки для управления состоянием. id присваивается каждому элементу в массиве. Я хочу, чтобы функция presshandler была свойством onPress.

const [selected, setSelect] = useState(Data);

const presshandler = (id) => {
    setSelect((prev) => {
        return prev.filter((list) => list.id !== id);
    });
};

1 Ответ

1 голос
/ 19 июня 2020

Если я правильно понял, вы хотите установить highlighted на true после того, как нажмете изображение:

const toggleSelect = id => {
    setSelect(prev => {
        return prev.map(item => {
            if(item.id !== id) return item
            return {
                ...item,
                highlighted: !item.highlighted
            }
        })
    })
}
// Usage:
<Image onPress={() => toggleSelect(image.id)} {...rest} />

После прочтения вашего комментария, я вижу, вы хотите переключиться. Итак, я отредактировал свой пример.

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