วิธีที่จะแสดงภาพใน ReactJS จาก localhost

0

คำถาม

ฉันเคย PHPmyAdmin เป็นของฉัน localhost,Axios ต้องทำปรับแต่งโปรแกรมเบื้องหลัฟังก์ชันและตอบโต้เพื่อให้แสดงบนหน้าเว็บที่ถูกเขียนด้วย,ฉันสร้างโต๊ะที่ร้านขายบัตรประจำตัวและแก้จุดเหลือตั้งแต่แก้จุดเหลือสามารถจะจัดเก็บภาพข้อมูล ฉันเคยรัฐ hooks และจัดการพากันเป็นรายการที่จะถูกแสดงบนหน้าแต่ตอนที่ฉันจัดการพาคนหน้าเป็นพังภาพถูกแสดง ฉันพยายามจะคอนโซล.ปูมบันทึก()บนภาพข้อมูลและมันแสดงเป็น{ประเภท:'บัฟเฟอร์',ข้อมูล:อาเรย์(50639)}บนคอนโซลเบราว์เซอร์

สรุปสั้นๆ..ผมพยายามที่จะเก็บภาพจากโต๊ะใน localhost และแสดงมันอยู่บนเบราว์เซอร์

ตอบโต้


function ProjectCard() {

    const [projectCard, setProjectCard] = useState([]);

    const instance = axios.create( {
        baseURL: "http://localhost:3001/api",
    });

    useEffect(() => {
        instance.get("/getAvailableProjects").then((response) => {
            setProjectCard(response.data);
        });
    }, []);

    return (
        <div className="row g-4 py-4 border-bottom">
            {projectCard.map((val) => {
                return (
                    console.log(val.PROJECT_IMAGE) {/* displayed as {type: 'Buffer', data: Array(50639)} */}
                    <div className="col-lg-3 col-md-6 mb-2" key={val.PROJECT_ID}>
                        <img id="project-img" src={val.PROJECT_IMAGE} className="img-fluid" /> {/* BROKEN IMAGE */}
                    </div>
                );
            })}
       </div>
    )
};

export default ProjectCard;

เซิร์ฟเวอร์



app.get("/api/getAvailableProjects", (req, res) => {

    const sqlQuery = "SELECT *,  from projectdetail";

    db.query(sqlQuery, (_error, result) => {
        res.send(result);
    });
});

มันมีทางที่จะแปลงนี้แก้จุดเหลือข้อมูลไปเป็นจริงของภาพ?

axios blob reactjs
2021-11-23 06:15:36
1

คำตอบที่ดีที่สุด

1

กช่องนี้ JS วัตถุ:

<img src={URL.createObjectURL(file) alt="fooBar" />

มันควรจะดูเหมือนนี้

ที่อยู่ URL ได้createObjectURL: https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL

2021-11-23 06:24:29

ฉันพยายามนี้เพื่อสร้างที่อยู่ URL นั้นแต่มันก็ยังไม่มีการแสดงหน้า. ฉันคอนโซล.ปูมบันทึก()มันอีกครั้งและมันทำให้ฉันมีค่าของ"แก้จุดเหลือ:localhost:3000/e1f1a190-955a-4f03-9f46-83a1934d8837"
Irving Real

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่