tengo una matriz de objetos en otro archivo, mapeo eso en 2 archivos cómo hacerlo: e.target.src en react-native porque en react-native no tenemos e
// almacenar archivo:
export default [ { liked: false, }, { liked: false, }, { liked: false, }, { liked: false, }, ]// 2 archivos
import images from 'store.js' function unlike (){ // in react will be """ e.target.src = '../assets/unliked.png' """ but how in react-native ? } function like (){ // in react will be """ e.target.src = '../assets/liked.png' """ but how in react-native ? } return( <ScrollView> {images.map(image => { return({image.liked ? <Image onPress={unlike} source={require('../assets/liked.png')} /> : <Image onPress={unlike} source={require('../assets/unliked.png')} /> </ScrollView > )Puede importar ambas imágenes de antemano y establecer dinámicamente la fuente de la imagen según liked o no. Para volver a representar la interfaz de usuario en cada me gusta o no me gusta, use un estado:
import images from 'store.js' import React, { useState, useEffect } from 'react'; // other imports const liked = require('../assets/liked.png') const disliked = require('../assets/unliked.png') const LikesComponent = (props) => { const [likesState, setLikesState] = useState(images) const handleLikes = (index) => { let temp = [...likesState] temp[index].liked = !temp[index].liked setLikesState(temp) } return( <ScrollView> { likesState.map((image, index) => <Image key={index} source={image.liked ? liked : disliked} onPress={() => handleLikes(index)} /> } </ScrollView> ) } export default LikesComponent