मैंने वेब को खंगाला है और ऐसा करने का कोई तरीका नहीं ढूंढ सका। हो सकता है कि मैं इस पर विचार कर रहा हूं, लेकिन मैं एक एपीआई पर कॉल करने वाले रिएक्ट प्रोजेक्ट पर काम कर रहा हूं। एपीआई (ओएमडीबी) मूवी पोस्टर प्रदर्शित करता है लेकिन कुछ फिल्मों में पोस्टर नहीं होते हैं। मेरे पास मेरे एसआरसी फ़ोल्डर में एक छवि है जिसे जब भी एपीआई फिल्म के लिए एक छवि वापस नहीं करता है तो मैं सम्मिलित करना चाहता हूं।

मैंने यह देखने की कोशिश की है कि क्या एपीआई ने एक विकल्प की पेशकश की है लेकिन वे नहीं करते हैं। मैंने इफ एलएसई स्टेटमेंट जैसे विभिन्न तरीकों की कोशिश की है लेकिन यह एक त्रुटि का कारण बनता है। पहली बार यहां एक प्रश्न पूछकर, स्वरूपण को क्षमा करें। मैं जानना चाहता हूं कि कोई छवि डालने का कोई तरीका है या यदि यह एपीआई के पक्ष में एक सीमा है।

संपादित करें: इनलाइन टर्नरी अभिव्यक्ति शामिल है लेकिन आईएमजी अभी भी बिना किसी छवि वाली फिल्मों पर नहीं आ रहा है। उदाहरण देखें

import React from 'react';
import moviePoster from '../img/moviePoster.jpg';

const MovieList = (props) => {
    const NominateComponent = props.nominateComponent;

    return(
        <>
            {props.moviesList.map((movie, index) => (
                <div className='image-container d-flex justify-content-start m-3'>
                    <div className='d-flex flex-column bd-highlight mb-3 movieImage'>
                        <img src={(movie.Poster !== "N/A") ? movie.Poster : {moviePoster}}  
                        className='moviePoster img-fluid' alt='movie'></img>
                        <div id='overlay'
                            onClick={() => props.handleNominateClick(movie)} 
                            className='d-flex align-items-center justify-content-center'>
                            <NominateComponent />
                        </div>
                        <div className='text-left movieTitleText'>
                            <p>({movie.Year}),{movie.Title}</p>
                        </div>
                    </div>
                </div>
            ))}
        </> 
    );
};

export default MovieList
0
BeeWhoop 14 जिंदा 2021, 05:43

2 जवाब

सबसे बढ़िया उत्तर

आप सीधे img के लिए अपने src विशेषता के अंदर चेक इन करते हैं, जैसे:

<img src={(movie.Poster !== "N/A")?movie.Poster:"default-image-url"}  
0
Payam V 14 जिंदा 2021, 05:56

@ Payam के सुझाव का उपयोग करना काम कर गया। फिर सुनिश्चित करें कि इसे एक वस्तु न बनाएं जैसा कि @ Cirrus86 ने बताया। अब यह इरादा के अनुसार काम कर रहा है। शुक्रिया!

 <img src={(movie.Poster !== "N/A") ? movie.Poster : moviePoster }  className='moviePoster img-fluid' alt='movie'></img>
0
BeeWhoop 14 जिंदा 2021, 07:08