Sono un neofita del webpack e vorrei usarlo con reactjs ma in qualche modo perso confuso al momento. Mi piacerebbe sapere come viene gestito il css nel processo di sviluppo del sito del cliente con il webpack. So che webpack raggruppa tutti i miei js e li collega come bundle.js che faccio riferimento nel mio file html come questo: <script src="http://localhost:3000/assets/bundle.js"></script>
basato sulla mia configurazione di webpack-dev-server. Ora, ho anche un file css. Dove va questo? quale sarebbe il mio url per fare riferimento a questo nel mio file html. Capisco che ci sia un caricatore di stile e un caricatore di css e anche un ExtractTextPlugin, ma da dove proviene l'output? Ho visto che posso var css = require('path/customStyle.css')
ma non sembra di vedere dove appare? Lo faccio nel mio file index.jsx. Quindi la domanda il suo: come ottenere questo insieme, che posso fare riferimento al mio customStyle.css. Che cosa ho fatto di sbagliato, o che cosa mi manca Ecco il mio progetto di struttura di cartelle:Webpack css setup e best practice
|_source
| |_js
| |_js
| | |_components
| | |_ *.jsx
| |_index.jsx
|_assets
| |_css
| |_customStyle.css
|__index.html
miei webpack.config.js assomiglia a questo
var ExtractTextPlugin = require('extract-text-webpack-plugin');
module.exports = {
entry: './source/js/index.jsx',
output: {
filename: 'bundle.js',
publicPath: 'http://localhost:8090/assets'
},
module: {
loaders: [
{
test: /\.jsx$/,
loader: 'jsx-loader?insertPragma=React.DOM&harmony'
},
{
test: /\.css$/,
loader: ExtractTextPlugin.extract("style-loader","css-loader")
}
]
},
externals: {
'react': 'React'
},
resolve: {
extensions: ['', '.js', '.jsx','.css']
},
plugins:[
new ExtractTextPlugin("styles.css")
]
}
di file HTML è simile al seguente:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="../node_modules/react/dist/react-with-addons.js"></script>
<!-- like to link css here but don't know the path to link to -->
</head>
<body>
<div id="container">
</div>
<script src="http://localhost:3000/webpack-dev-server.js"></script>
<script src="http://localhost:3000/assets/bundle.js"></script>
</body>
</html>
Qualsiasi aiuto con qualche background su come funziona il modo webpack e come ottenere i miei stili sarebbe fantastico.
È una domanda vecchia di 2 anni e credo che tu abbia trovato la soluzione. In caso contrario, utilizzare 'extract-text-webpack-plugin',' css-loader', 'html-webpack-plugin' per organizzare i file HTML, JSX, CSS. – SkrewEverything