Webpack教程

简介: Webpack教程

安装webpack


新建项目的目录,并将命令行切换到该目录下:

mkdir webpackdemo && cd webpackdemo

初始化项目(我们自己开发的npm包,)

npm init -y

把webpack和webpack-cli安装到项目本地

npm install webpack webpack-cli --save-dev

创建webpack配置文件webpack.config.js

echo “Hello Webpack” > webpack.config.js

在package.json文件配置npm scripts


"scripts": {
    "build": "webpack --config webpack.config.js"
  },

调整package.json文件,以便确保我们的项目是private(私有的),并且移除 main 入口

{
  "name": "webpackdemo",
  "version": "1.0.0",
  "description": "webpack指南",
  -"main": "index.js",
  +"private": true
}

使用webpack


在webpack.config.js文件中导出一个对象,通过对象中的属性对webpack进行配置:

const path = require('path');
module.exports = {
    mode: 'development',      // 打包模式,目前配置的是开发模式
    entry: './src/index.js',  // 入口文件
    output: {                 // 输出文件的配置
        filename: 'main.js',
        path: path.resolve(__dirname, 'dist')
    }
}

使用loader


由于webpack原始只支持JavaScript的打包,不支持其他文件类型的打包,因此不同类型的文件我们不同的loader来处理它们。


使用css-loader和style-loader处理css文件:


npm install css-loader style-loader 
–save-dev

配置

   module: {
        rules: [
            {
                test: /\.css$/,
                use: ['style-loader', 'css-loader']
            }
        ]
    }

使用file-loader加载图片

npm install file-loader –save-dev

配置file-loader

module: {
        rules: [
            {
                test: /\.css$/,
                use: ['style-loader', 'css-loader']
            },
            {
                test: /\.(png|svg|jpg|gif)$/,
                use: ['file-loader']
            }
        ]
    }

使用plugin


插件(Plugin)是用来扩展webpack功能的。


HtmlWebpackPlugin


HtmlWebpackPlugin插件默认会生成一个index.html文件,用来替换原有文件,index.html文件的内容也会随着替换而改变。

安装插件

npm install html-webpack-plugin --save-dev

使用插件


const HtmlWebpackPlugin = require('html-webpack-plugin');
    plugins: [
        new HtmlWebpackPlugin({
            title: 'Home',
            filename: 'home.html'
        })
    ]

CleanWebpackPlugin

该插件会在构建之前清理dist/文件夹。


安装插件


npm install clean-webpack-plugin --save-dev

配置插件


使用devServer


安装webpack-dev-server

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

配置

    devServer: {
        contentBase: path.join(__dirname, 'dist'),
        port: 8080,
        index: 'home.html',
        hot: true,
        open: true,
        https: true
    }


目录
相关文章
|
30天前
|
缓存 JavaScript 前端开发
webpack超详细教程,学webpack看这一篇就够了!(下)
webpack超详细教程,学webpack看这一篇就够了!(下)
|
30天前
|
缓存 JSON 前端开发
webpack超详细教程,学webpack看这一篇就够了!(上)
webpack超详细教程,学webpack看这一篇就够了!(上)
|
1月前
|
JSON JavaScript 前端开发
Webpack的ts的配置详细教程
Webpack的ts的配置详细教程
65 0
|
7月前
|
移动开发 JSON 自然语言处理
Vue系列教程(16)- 模块打包器(webpack)
Vue系列教程(16)- 模块打包器(webpack)
54 0
|
JavaScript 前端开发
React全家桶建站教程-Webpack #5
React全家桶建站教程-Webpack #5
82 0
|
JavaScript 前端开发 CDN
Vue——11- webpack保姆级教程02
source-map、oneOf、externals、树摇技术、安装jQuery、 对css进行打包压缩以及 code split(代码分割)
130 0
|
存储 缓存 JSON
Vue——10 - webpack打包保姆级教程01
打包js、json、css、less、html、背景图片以及图片、字体(Font)文件,devsever,生产环境配置以及css的兼容写法
357 0
|
JavaScript 前端开发
【TypeScript教程】# 16:ts + webpack + less实现贪吃蛇小游戏
【TypeScript教程】# 16:ts + webpack + less实现贪吃蛇小游戏
135 0
【TypeScript教程】# 16:ts + webpack + less实现贪吃蛇小游戏
|
JavaScript
【TypeScript教程】# 6:使用webpack打包ts代码
【TypeScript教程】# 6:使用webpack打包ts代码
170 0
【TypeScript教程】# 6:使用webpack打包ts代码
|
JSON JavaScript 前端开发
webpack快速入门教程
webpack快速入门教程 1、了解Webpack相关 什么是webpack Webpack是一个模块打包器(bundler)。 在Webpack看来, 前端的所有资源文件(js/json/css/i
82 0