浅谈Webpack打包工具的应用

时间: 2017-11-10阅读: 1985标签: webpack

webpack前端工程中随处可见,当前流行的 vue, react, weex 等解决方案都推崇 webpack 作为打包工具前端工具云集的时代,这是你值得选择的之一。

webpack的基本概念

webpack 是一个前端打包工具,希望解决前端工程中静态资源发版前的打包问题。以 JavaScript 作为载体,引入前端项目依赖的模块,最终通过 webpack 打包成为浏览器支持的文件。

webpack 官方示意图形象的表述了这一过程,在此借用:



webpack不是为取代gulp之类的工具

在前端社区看到有人讨论 webpack 是否会取代 gulp 之类的工具。 当使用过 gulp 和 webpack 之后,才能体会到这是一个不恰当的对比。

使用过 grunt 或者 gulp 之类的工具的伙伴可以回忆一下我们的使用场景,我们将 sass 编译,图片压缩,js 压缩,hash文件名等工作编成不同的任务,最后顺序执行。

webpack 的核心在于静态资源打包。gulp 的核心在于任务集成。两个工具,解决了前端工程中不同的问题。

我们完全可以结合 gulp 和 webpack 使用。

浏览器所支持的静态资源是有限的,webpack 旨在让项目中的静态资源都能得到支持。然而 webpack 只能识别 JavaScript,所有的文件(包含html,jpg,sass,etc.)都被作为模块。

entry

webpack 通过 js 创建项目中所有静态资源的依赖映射。entry 定义了 webpack 打包的入口文件。

output

output 定义了 webpack 打包文件的处理方式,output 配置指定了打包后文件的输出目录(output.path),文件名(output.filename)。

loader

模块加入项目依赖映射后,loader 定义了

plugin

plugin 为 webpack 提供了更多的自定义功能。


原文地址:http://jaylin.wang/2017/begin-use-webpack.html


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/80

深入了解 webpack 模块加载原理

webpack 是一个模块打包器,在它看来,每一个文件都是一个模块。无论你开发使用的是 CommonJS 规范还是 ES6 模块规范,打包后的文件都统一使用 webpack 自定义的模块规范来管理、加载模块

一步一步webpack,webpack的学习入门

webpack是前端工程构建的一套工具,为什么一个程序称之为一套呢,是因为webpack其实是npm的一个模块,使用起来的话,这期间还需要很多其它模块来进行支持,所以我称之为一套工具。

Webpack重要知识点

为了使用tree shaking,需要满足以下条件:使用ES2015语法(即import和export),在项目package.json文件中,添加sideEffects入口,引入一个能够删除未引用代码(dead code)的压缩工具(minifier)(例如:UglifyJSPlugin)

webpack系列之loader及简单的使用

webpack本身只能打包Javascript文件,对于其他资源例如 css,图片,或者其他的语法集比如jsx,是没有办法加载的。 这就需要对应的loader将资源转化,加载进来。

webpack 阶段回顾 之 webpack-dev-server

webpack-dev-server是一个让我们可以模拟线上环境进行项目调试的工具,主要功能有:路径重定向、浏览器中显示编译错误、接口代理 如解决跨域、热更新

webpack常用插件_webpackPlugin插件总结

本地开发构建’自然离不开webpack,webpack想要工作,那它就需要各种插件的支持,有不少童鞋在平时的项目开发中使用过Webpack Plugins,这篇文章整理总结常用的webpackPlugin插件

Webpack 4.0.0不再支持 Node.js 4

Webpack 是一个现代 JavaScript 应用程序的模块打包器 (module bundler) 。当 Webpack 处理应用程序时,它会递归地构建一个依赖关系图,其中包含应用程序需要的每个模块

webpack Code Splitting浅析

Code Splitting是webpack的一个重要特性,他允许你将代码打包生成多个bundle。对多页应用来说,它是必须的,因为必须要配置多个入口生成多个bundle;对于单页应用来说,如果只打包成一个bundle可能体积很大,导致无法利用浏览器并行下载的能力

提升webpack构建速度

减少resolve解析;把 loader 应用的文件范围缩小,只在最少数必须的代码模块中去使用必要的 loader;减少 plugin 的消耗,webpack 的 plugin 会在构建的过程中加入其它的工作步骤

Vue中使用webpack别名的方法

Vue中使用webpack别名的方法,需要引入公共文件,但是公共文件的文件路径里当前文件很远,那么就会形成上面示例中的那种路径很长的情况。而因为文件目录是约定俗成的,不可轻易更改,无法修改相对路径。那么该怎么办呢?

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!