学习webpack--基础篇(1):webpack的基本介绍

本文探讨了深入掌握webpack的重要性,特别是在多终端开发背景下,它对于打包构建的必要性。文章指出,webpack的核心功能包括模块处理、配置灵活性、插件系统等,但也带来了学习曲线。初学者面临的挑战包括理解各种新概念,如entry、output、loaders、plugins等。此外,文章还强调了构建工具在转换ES6语法、处理JSX、预处理器和性能优化等方面的作用,并简要介绍了webpack的基本使用和配置流程。

基础篇内容

  1. webpack的核心概念和开发必备技巧
为什么要深入掌握webpack
  1. 与应用场景的开发方式息息相关
    手机 移动平板和可穿戴设备的普及, web前端开发触角从传统的pc页面开发发展到多终端的开发, 我们需要兼顾pc/H5等多种不同分辨率的页面开发. 因此针对不同的应用场景, 做不同的打包就显得很重要,如pc端的中后台应用,我们需要针对支持单页应用的打包构建, H5页面对性能和可访问性有极高要求,因此需要通过构建来支持服务端渲染和PWA离线缓存

  2. node.js自2009年发布以来, node.js社区异常繁荣,迄今为止有80多万第三方插件/组件,且还在每天快速增加. 而npm组件在浏览器端的js代码中不能直接使用,这需要借助webpack等构建工具来快速复用各种优秀成熟的组件,从而加速web的开发

  3. 当下前端最为流行的三大框架React/Angular.js/Vue,里面的一些语法如JSX和Vue指令无法在浏览器中直接解析,需要借助构建工具进行转换

  4. webpack是前端构建领域最耀眼的一颗星, 无论哪条路线, 都需要很强的webpack知识,熟悉webpack的知识和应用场景, 能拓宽前端技术栈,在发现页面打包的速度和资源体积问题时,能够知道如何排查问题和优化;同时熟悉webpack的原理,有助于其他跨端应用的开发,如对小程序Weex/React Native/Electron等框架的打包时,能快速上手

初学者学习webpack的过程中会遇到哪些困哪
  1. 一切皆为模块
    js文件/HTML CSS/图片/字体都可以成为模块

  2. webpack的配置异常灵活,且具备强大的插件化拓展能力

  3. 需要了解webpack里面众多新的概念
    entry / output / mode / loaders / plugins / 热更新 / code spliting / tree shaking等等

  4. webpack有学习曲线
    webpack打包的速度/体积/页面加载时的性能优化等,需要具备比较全面的webpack专业知识,搞懂webpack内部的运行原理和插件机制才能深入掌握

构架工具的作用,及必要性
  1. 转换ES6语法
    在低版本的浏览器支持的不是很好,需要构建工具转化ES6语法

  2. 转换JSX
    三大框架React/Angular.js/Vue,里面的一些语法如JSX和Vue指令无法在浏览器中直接解析,需要借助构建工具进行转换

  3. CSS前缀补全 / 预处理器
    less / sass等

  4. 压缩文件

  5. 图片压缩

前端构建工具的演变之路
ant + YUI Tool ----> grunt ----> fis3 / glup -----> rollup / webpack / parcel
webpack基本使用
  1. 配置文件

    webpack默认配置文件: webpack.config.js
    可在package.json中通过webpack --config 指定配置文件,
    如:
    开发环境 webpack --config webpack.dev.config.js
    生产环境webpack --config webpack.product.config.js

  2. 配置组成

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值