-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathwebpack.config.js
34 lines (33 loc) · 1.31 KB
/
webpack.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
const path = require('path');
module.exports = {
entry: path.resolve(__dirname, 'src', 'index.js'), //nosso arquivo de entrada
output: {
path: path.resolve(__dirname, 'public'), //vai jogar o bundle - o código que foi transpilado para o navegador
filename: 'bundle.js', //arquivo bundle/output
},
devServer: {
contentBase: path.resolve(__dirname, 'public'),
},
module: { //dentro do module vamos informar ao webpack o que ele deve utilizar para cada tipo de arquivo
rules: [
{
test: /\.js$/,//para arquivos JS vamos utilizar o babel - para que ele possa transpilar para que o navegador interprete. Estamos passando a expressão regular que informa qual é a extensão dos arquivos
exclude: /node_modules/, //os arquivos que estão no node_modules já estão transpilados pelo babel na maioria das vezes
use: {
loader: 'babel-loader', //para arquivos JS utilize o babel-loader
}
}, {
test: /\.css$/,
use: [
{ loader: 'style-loader' }, //loaders para arquivos CSS
{ loader: 'css-loader' }, //
]
}, {
test: /.*\.(gif|png|jpe?g)$/i, //aceita imagens com extensão .gif, .png, .jpg e .jpeg
use: [
{ loader: 'file-loader' }, //loader para upload de imagens
]
}
]
}
};