Para essa aula continuaremos a utilizar a pasta das aulas anteriores sobre webpack.
Para utilizar um plugin no webpack precisamos primeiro instalar o pacote do plugin como dependência de desenvolvimento. Iremos utilizar nessa aula o plugin “mini-css-extract-plugin”, que é um plugin para extrair o CSS incluindo no ponto de entrada em um arquivo separado do nosso arquivo javascript. Comece instalando o plugin:
Obs.: Para mais plugins visite https://webpack.js.org/plugins/
npm install --save-dev mini-css-extract-plugin
Agora que já instalamos o plugin, precisamos ajustar as configurações do webpack para incluir o plugin e utilizá-lo nos arquivos CSS:
Obs.: Repare que para esse plugin isso ocorre em duas etapas, primeiro incluímos a instância da classe MiniCssExtractPlugin no array “plugins”, e então substituímos o “style-loader” pelo loader do plugin (porque agora não iremos carregar estilos com o javascript e sim incluir estilos em um css separado)
const path = require('path')
const MiniCssExtractPlugin = require('mini-css-extract-plugin')
module.exports = {
entry: {
index: './src/index.js'
},
output: {
path: path.resolve(__dirname, 'dist')
},
mode: 'development',
module: {
rules: [{
test: /\\.css$/,
use: [MiniCssExtractPlugin.loader, 'css-loader']
}]
},
plugins: [
new MiniCssExtractPlugin()
]
}
Por fim, só precisamos ajustar o arquivo index.html para incluir o novo arquivo css que geramos:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Usando o Webpack</title>
<link rel="stylesheet" href="index.css">
<script src="index.js"></script>
</head>
<body>
<h1>Usando o Webpack</h1>
</body>
</html>