Sto usando Webpack per raggruppare i miei moduli e usare sass per lo styling in un'applicazione basata su reagenti.Come posso caricare le immagini utilizzate nel foglio di stile sass nel webpack?
Uso di un foglio di stile separato Sto impostando l'immagine di sfondo di un componente e caricato quel foglio di stile in index.js
. Tutti gli stili nel foglio di stile vengono applicati a quel componente eccetto l'immagine di sfondo.
Ecco il mio campione foglio di stile
$bg-img: url('/img/bg.jpg');
.show {
position: relative;
background: $black $bg-img center center;
width: 100%;
height: 100%;
background-size: cover;
overflow: hidden;
}
Un modo per risolvere il problema sarebbe richiede esplicitamente l'immagine e quindi creare stile in linea per reagire componenti.
img1 = document.createElement("img");
img1.src = require("./image.png");
ma voglio carico tutte le immagini dalla mia cartella delle immagini, non appena i miei carichi stile fogli non richiedendo ogni immagine separatamente.
mio file di configurazione webpack è
module.exports = {
devtool: 'source-map',
entry: {
main: [
'webpack-dev-server/client?http://localhost:8080',
'webpack/hot/only-dev-server',
'./src/index.js'
]
},
output: {
path: path.join(__dirname, 'public'),
publicPath: '/public/',
filename: 'bundle.js'
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
],
module: {
loaders: [
{
test: /\.jsx?$/,
include: path.join(__dirname, 'src'),
loader: 'react-hot!babel'
},
{
test: /\.scss$/,
include: path.join(__dirname, 'sass'),
loaders: ["style", "css?sourceMap", "sass?sourceMap"]
},
{
test: /\.(png|jpg)$/,
include: path.join(__dirname, 'img'),
loader: 'url-loader?limit=10000'
} // inline base64 URLs for <=10k images, direct URLs for the rest
]
},
resolve: {
extensions: ['', '.js', '.jsx']
},
devServer: {
historyApiFallback: true,
contentBase: './'
}
};
posso mancare alcuni punti banali. Qualsiasi aiuto è apprezzato.
Ah volevi le immagini incorporate nel css. Sono contento che tu l'abbia capito. – Brandon
Figlio di un ... grazie per NON aver eliminato questo post. E io sono con te, questo è completamente opaco nel modo in cui sono scritti i documenti, ho pensato che tutto BELOW 10kb sarebbe stato codificato con Dataurl e tutto il resto sarebbe passato attraverso ... – motleydev