webpack.config.js
const { resolve } = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {
entry: './src/js/index.js',
output: {
// [name] 默认是 main, 可以写固定值
// 文件名称(制定名称+目录)
filename: 'js/[name].js',
// 输出文件目录(将来所有资源输出的公共目录)
path: resolve(__dirname, 'build'),
},
module: {
rules: [
// loader的配置
{
test: /\.css$/,
// 多个loader 用 use
use: ['style-loader', 'css-loader']
},
]
},
// 插件
plugins: [
new HtmlWebpackPlugin()
],
// 模式 development 开发, production 生产
mode: 'development',
// 解析模块的规则
resolve: {
// 配置解析模块路径别名: 优点: 简写路径,缺点: 路径没有提示。
alias: {
$css: resolve(__filename, '../src/css')
},
// 配置省略文件路径的后缀名,优先查找第一个。
extensions: ['.js', '.json', '.css', 'jsx'],
// 告诉webpack 解析模块 去哪个目录找。
modules: [resolve(__dirname, '../../node_modules'), 'node_modules']
}
};
index.js
import '$css/index';
index.css
html, body {
height: 100%;
background-color: pink;
}