اذهب إلى المحتوى
  • 0

Uncaught TypeError: Cannot read properties of undefined (reading 'img') (React)

Mohamed Ramy3

السؤال

يظهر لي هذا الخطأ عند محاوله استدعاء البيانات 

import React from "react";
import MemesData from "../MemesData";
import logoimg from "../R.png" 
import one from "../one.jpg"

function Form(){
    const [image , setimage] = React.useState()

    function getimg(){
        const memesarray = MemesData.data.memes
        console.log(memesarray)
        const randomnumber = Math.floor(Math.random * memesarray.length)
        setimage(memesarray[randomnumber].img) 
     }

    

    return(
        <div className="form">
        <div className="form-inputs">
        <input type={"text"} placeholder="top text"></input>
        <input type={"text"} placeholder="bottom text"></input>
        </div>
        <button onClick={getimg}>get a new meme image</button>
        
        <h1>{image}</h1>
        </div>
    )
}

export default Form;
import logoimg from "./R.png" 
import one from "./one.jpg"

export default {
    data : {
        memes: [
            {
                img: "./R.png",
                num:"88"
            },
            {
                img : "./one.jpg",
                num :"99"
            }
        ]
    }
}

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

Recommended Posts

  • 0

اعتقد ان المشكلة في الكود :

const randomnumber = Math.floor(Math.random * memesarray.length)

حيث يبدو انك نسيت ان تستدعي الدالة random والشكل الصحيح هو 

const randomnumber = Math.floor(Math.random() * memesarray.length)
رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...