मेरे पास डेटाबेस से यादृच्छिक रूप से ली गई 5 तस्वीरें (जीआईएफ) हैं। मेरे पास स्टेट प्रेस जीआईएफ है जो क्लिक की गई तस्वीर की अनुक्रमणिका को परिभाषित करता है। मैं उनमें से प्रत्येक को ऑनक्लिक ईवेंट जोड़ना चाहता हूं (लूप के लिए):

export default function GameObject(props) {
  const addedToGameGif = [];
  const PhotoCards = [];

  const [pressedGif, gifPressed] = useState(-1);

  useEffect(() => {
    console.log('HELLO');
  }, []);

  // get random photos to addedToGameGif array
  // ...

  for (let i = 0; i < addedToGameGif.length; i += 1) {
     PhotoCards.push(
      <div>
        <Card
          id={i}
          onClick={() => gifPressed(i)}>
          <img src={addedToGameGif[i]} />
        </Card>
      </div>,
    );
  }
  return <div>{PhotoCards}</div>;
 }

मुझे कंसोल में हेलो संदेश सफलतापूर्वक मिलता है, लेकिन समस्या यह है कि मेरी बेतरतीब ढंग से चुनी गई तस्वीरें भी अलग-अलग में बदल जाती हैं। तो मैं उस फ़ोटो को फिर से लोड करने और फ़ंक्शन को कॉल करने से कैसे रोकूँ जो फ़ोटो को बेतरतीब ढंग से चुनता है?

0
vytaute 17 जिंदा 2020, 15:53

1 उत्तर

यह समाधान मेरे लिए काम किया! (घटकडिडमाउंट)

React.useEffect(() => {

   //Your code

}, [])
0
Yakup Ad 27 जुलाई 2020, 20:42