请注意,这是一篇站在完全新手的角度上来写的文章。可能你是一个后端人员想了解前端工具的使用和概念;也可能你是一个前端小菜(还在DIV+CSS的世界里挣扎着)。本文比较适合那些以前完全没有接触过WebPack,而又想使用的朋友。通过本文你能理解webPack工作原理及做用!(不会至于看了半天资料还没有头绪!)
前言:本人是一个从后端转向前端的程序猿,在此之前对于前端的印象一直是:HTML + CSS + JS。完全没有想过前端会发展的如此的迅速,各种名词的出现:Node、NPM、Grunt、Gulp、Bower、Webpack、Browserify、Yeoman。瞬间让感觉到不知道如何下手(好像根本学不完的样子)!
先上一张别人的图,目前的前端工具!
一、背景
如果你和我一样,之前对于前端打包工具的发展一无所知,甚至于不知道这些工具出现的必要性。你可以浏览此部分的内容,如果你不想知道这些或者对这些并不感兴趣,可以直接跳过此部分。
互联网程序现状
随着移动互联的来袭,当前越来越多的网站已经从单纯的网页模式,开始升级为webapp模式。它们运行在现代的浏览器中,使用HTML5、CSS3、ES6等技术开发,已经从单一的浏览功能转变为一个基于浏览器的富客户端。并且webapp通常是一个SPA(Single Page Application 单页面应用)。每个页面(View)通过异步的方式加载,有着良好的用户体验。但是这样做的结果是导致程序初始化和使用的过程中需要更多、更复杂的JavaScript代码来实现,这就对前端程序的开发带来巨大的挑战!
模块化系统的演变
随着程序的复杂性的增加,项目结构的庞大。把单一js文件按职责进行模块化划分。
我们在写页面的时候会这样写:
