webpack基础篇(一):webpack与构建发展简史

简介: webpack基础篇(一):webpack与构建发展简史

说明

玩转webpack课程学习笔记。



1、为什么需要构建工具


1、转换 ES6 语法

2、转换 JSX

3、CSS 前缀补全/预处理器

4、压缩混淆

5、图片压缩



2、前端构建演变之路


大致过程:

ant + YUI Tool grunt ==> gulp fis3 ==> webpack parcel rollup



3、为什么选择webpack


1、社区生态丰富

2、配置灵活和插件化扩展

3、官方更新迭代速度快


4、初识webpack

1、配置文件名称


  • webpack 默认配置文件:webpack.config.js
  • 可以通过 webpack --config 指定配置文件

比如:webpack --config webpack.dev.config.js

2、webpack 配置组成

module.exports = {
  entry: './src/index.js', // 打包的⼊入⼝口⽂文件
  output: './dist/main.js', // 打包的输出
  mode: 'production', // 环境
  module: { // Loader 配置
    rules: [
      { test: /\.txt$/, use: 'raw-loader' }
    ]
  },
  plugins: [ // 插件配置
    new HtmlwebpackPlugin({
      template: './src/index.html'
    })
  ]
};




5、环境搭建:安装webpack


1、安装 Node.js 和 NPM


2、安装 webpack 和 webpack-cli


  • 创建空文件夹
  • 文件夹里执行npm init -y,会生成 package.json 文件
  • 执行npm install webpack webpack-cli --save-dev
  • 检查是否安装成功:./node_modules/.bin/webpack -v

6、webpack初体验:一个最简单的例子

1、编写 webpack.config.js 文件

const path = require('path');
module.exports = {
  entry: './src/index.js',
  output: {
    path: path.join(__dirname, 'dist'),
    filename: 'bundle.js'
  },
  mode: 'production'
};



2、src文件夹里创建两个js文件

// index.js
import { helloWebpck } from './helloWebpack';
document.write(helloWebpck());
// helloWebpck.js
export function helloWebpck() {
  return 'Hello Webpack!';
}


3、执行打包命令,成功之后会生成dist文件夹,里面有bundle.js

./node_modules/.bin/webpack

4、在生成的dist文件夹里新建一个index.html文件

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>hello webpack</title>
</head>
<body>
  <script src="./bundle.js"></script>
</body>
</html>


5、浏览器打开index.html文件

20200613184313277.PNG


7、通过npm script 脚本运行webpack


1、通过 npm run build 运行构建


2、原理:模块局部安装会在 node_modules/.bin ⽬目录创建软链接


{
  "name": "my-project",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "build": "webpack"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "webpack": "^4.43.0",
    "webpack-cli": "^3.3.11"
  }
}
目录
相关文章
|
4天前
|
缓存 JavaScript 前端开发
【TypeScript技术专栏】TypeScript与Webpack构建优化
【4月更文挑战第30天】本文探讨了优化TypeScript与Webpack构建性能的策略。理解Webpack的解析、构建和生成阶段是关键。优化包括:调整tsconfig.json(关闭不必要的类型检查,适配目标环境)和webpack.config.js(配置entry、output、resolve,使用压缩插件)。启用Webpack缓存和增量构建,利用代码拆分与懒加载,能有效提升构建速度和开发效率。
|
4天前
|
缓存 前端开发 JavaScript
|
4天前
|
前端开发 JavaScript 开发者
webpack打包机制,构建过程和配置
webpack打包机制,构建过程和配置
20 0
|
4天前
|
JavaScript 前端开发 API
《Webpack5 核心原理与应用实践》学习笔记-> webpack并行构建
《Webpack5 核心原理与应用实践》学习笔记-> webpack并行构建
74 0
|
4天前
|
JavaScript 前端开发 Windows
《Webpack5 核心原理与应用实践》学习笔记-> 构建Electron
《Webpack5 核心原理与应用实践》学习笔记-> 构建Electron
40 1
|
4天前
|
前端开发 JavaScript
《Webpack5 核心原理与应用实践》学习笔记-> 构建微前端应用
《Webpack5 核心原理与应用实践》学习笔记-> 构建微前端应用
45 1
|
4天前
|
缓存 JavaScript 前端开发
《Webpack5 核心原理与应用实践》学习笔记-> 构建npm包
《Webpack5 核心原理与应用实践》学习笔记-> 构建npm包
46 0
|
6月前
|
Shell
webpack构建流程
webpack构建流程
45 0
|
7月前
|
JavaScript 测试技术 Shell
[笔记]vue从入门到入坟《五》vue-cli构建vue webpack项目
[笔记]vue从入门到入坟《五》vue-cli构建vue webpack项目
|
9月前
|
缓存 前端开发 JavaScript
前端性能优化之《webpack提升构建速度》
前端性能优化之《webpack提升构建速度》
123 0