webpack入门配置-及在项目中使用webpack

1. 全局下载webpack

    npm install webpack -g

2. 全局下载webpack-cli

    npm install webpack-cli -g

3. 初始化项目

    npm init 

4. 在项目中使用webpack

    npm install webpack -D

    npm i -D html-webpack-plugin // 在dist 目录下生成bundle

npm -D为--save-dev的缩写

5. 新建webpack.config.js文件

const path = require('path');
// webpack用来自动生成和引入js的模块
const HtmlWebpackPlugin = require('html-webpack-plugin');

module.exports = {
    // 环境为开发环境
mode: 'development',
    // 入口
entry: {
aa: './src/components/app.js',
},

    // 出口

output: {
path: path.resolve(__dirname, 'dist'),
filename: 'js/bundle.js'
},
    // 模块

module: {
rules: [
{ // 处理.js结尾的文件,使用babel将es6,es7的语法转换成浏览器能识别的语法
test: /\.js$/,
exclude: path.resolve(__dirname, 'node_modules'),
include: path.resolve(__dirname, "src"),
use: "babel-loader"
},
{ // 处理.css .less结尾的文件,需要下载yarn add css-loader style-loader less less-loader -D
 

            // 注意使用less-loader一定要下载yarn add less -D。

            // postcss-loader是webpack的loader模块的css后处理器,会适配浏览器,将实验室属性前面自动加上前缀

test: /\.(css|less)$/,
use: [
'style-loader',
{ loader: 'css-loader', options: { importLoaders: 1 } },
{
loader:'postcss-loader',
options:{
ident:'postcss',
plugins:[
require('autoprefixer')({
browsers:['last 5 versions']
})
]
}
},
'less-loader'
]
},

            // 处理.html结尾的模板文件 yarn add html-loader -D

{
test:/\.html$/,
use: "html-loader"
},
            // 处理图片资源 yarn add file-loader url-loader -D

{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'file-loader',
query: {
limit: 10000,
name: 'assets/[name].[hash:5].[ext]'
}
}
]
},
plugins: [
new HtmlWebpackPlugin({
template: 'index.html', // 模板html
filename: 'index.html', // 输出的html
inject: false,
minify: {
removeComments: true, // 打包后的html文件去掉注释
collapseWhitespace: true, //打包后的html文件去掉空格
}
})
]
}



webpack入门配置-及在项目中使用webpack


// 在根目录下新建.babelrc文件,里面是你要将js文件编译成es几

webpack入门配置-及在项目中使用webpack