webpack

依赖

npm install webpack --save-dev
npm install webpack-cli --save-dev
npm install webpack-dev-server --save-dev

命令

指定打包环境

webpack --mode <development> | <production>

开启服务器

webpack-dev-server

指定配置文件

webpack --config <配置文件路径>

webpack.config.js

const path = require("path");

module.exports = {

    // 入口(可配置多个)
    entry: {
		main: "./src/main.js"
	},

    // 出口
    output: {
        path: path.resolve(""),
        filename: "[name].[hash].js"
    },

    // 模式: development | production
    mode: "",

    // 模块
    module: {
    	// 匹配规则
        rules: []
    },

    // 插件
    plugins: [],

    // 开发环境服务器
    devServer: {
        port: 
        // 跳过检查
        disableHostCheck: true
    },

	performance: {
		// webpack的性能提示
		hints: <true | false>
	}

};

loader

css-loader

npm install css-loader --save-dev
npm install style-loader --save-dev
npm install mini-css-extract-plugin --save-dev
const miniCssExtractPlugin = require("mini-css-extract-plugin");

{
	test: /\.css$/,
	use: [{
		loader: miniCssExtractPlugin.loader,
		options: {
			publicPath: "../"
		}
	}, "css-loader"]
}

new miniCssExtractPlugin({
	filename: "css/[name].css"
})

vue-loader

npm install vue-loader --save-dev
npm install vue-template-compiler --save-dev
{
	test: /\.vue$/,
	use: ["vue-loader"]
}

必须要使用插件

const vueLoaderPlugin = require("vue-loader/lib/plugin");
new vueLoaderPlugin()

url-loader

npm install url-loader --save-dev
{
	test: /\.(ttf|eot|svg|woff|woff2)$/,
	use: ["url-loader"]
}

babel-loader

npm install babel-loader @babel/core @babel/preset-env @babel/plugin-transform-runtime @babel/plugin-proposal-class-properties --save-dev
{
	test: /\.(js)$/,
	use: "babel-loader",
	exclude: /node_modules/
}

.babelrc

{
  "presets": ["@babel/env"],
  "plugins": ["@babel/plugin-transform-runtime", "@babel/plugin-proposal-class-properties"]
}

插件

html-webpack-plugin:生成html插件

npm install html-webpack-plugin --save-dev
const htmlWebpackPlugin = require("html-webpack-plugin");

new htmlWebpackPlugin({
	// 生成html文件名
	filename: "",
	// 模板
	template: "",
	// 指定引入js
	chunks: []
})

copy-webpack-plugin:复制资源插件

npm install copy-webpack-plugin --save-dev
const copyWebpackPlugin = require("copy-webpack-plugin");

new copyWebpackPlugin({
	patterns: [
		{
			from: "./src/...",
			to: "..."
		}
	]
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值