J'essaie d'accéder à une image statique à utiliser dans une backgroundImage
propriété en ligne dans React. Malheureusement, je me suis épuisé sur la façon de procéder.
En général, je pensais que vous faisiez comme suit:
import Background from '../images/background_image.png';
var sectionStyle = {
width: "100%",
height: "400px",
backgroundImage: "url(" + { Background } + ")"
};
class Section extends Component {
render() {
return (
<section style={ sectionStyle }>
</section>
);
}
}
Cela fonctionne pour les <img>
balises. Quelqu'un peut-il expliquer la différence entre les deux?
Exemple:
<img src={ Background } />
fonctionne très bien.
Je vous remercie!
javascript
reactjs
Kris
la source
la source
style={{backgroundImage: "url(" + Background + ")"}}
url(${Background})
}; classe Section étend Component {render () {return (<section style = {sectionStyle}> </section>); }}Si vous utilisez ES5 -
Si vous utilisez ES6 -
En gros, supprimer les accolades bouclés inutiles tout en ajoutant de la valeur aux travaux de la propriété backgroundImage fonctionnera.
la source
backgroundImage: `url("${Background}")`
, car votre exemple ES6 ne fonctionnait pas pour moi.Style en ligne pour définir n'importe quelle image en plein écran:
la source
Vous pouvez également importer l'image dans le composant à l'aide de la
require()
fonction.<div style={{ backgroundImage: `url(require("images/img.svg"))` }}>
Notez les deux ensembles de crochets . Le premier ensemble sert à entrer en mode de réaction et le second à désigner un objet
la source
https://images.com/myimage.png
url(https://images.com/myimage.png)
Vous pouvez utiliser des modèles de littéraux (inclus avec back-tick: `...`) à la place pour une
backgroundImage
propriété comme celle-ci:la source
essaye ça:
la source
Pour moi, ce qui a fonctionné, c'est de l'avoir comme ça
la source
Vous pouvez essayer usimg
la source