前端构建工具 webpack
一.自我初级认知 (是什么? 能干什么,有卵用? 有选择为什么要选你?(比较优势在哪) ) 适合的才是最好的
模块打包器(module bundler) 根据项目需求合并代码,并且支持按需加载。
1.将混在页面中的图片文件、js文件、css文件抽取出来,解除依赖。
2.模块系统主要解决模块的定义、依赖和导出.
3.全局作用域下,也就是定义在 window 对象中。
4.webpack实现的功能:
a:将依赖树拆分成按需加载的块
b:初始化加载的耗时尽量少
c:各种静态资源都可以视作模块
d:将第三方库整合成模块的能力
e:可以自定义打包逻辑的能力
f:适合大项目,无论是单页还是多页的 Web 应用
5.编译后缓存到内存中去。
6.webpack的理念是基于项目处理的,把对应的文件格式给对应的loader处理,然后你就不用管了,它会决定怎么压缩,编译。
配置文件:用规定的语法描述你要干什么! 怎么干是工具的事! 就像给方法传递参数一样。
二:webpack配置
1.entry:配置要打包的文件的入口;可以配置多个入口文件
2.output:配置输出文件的路径,文件名。 出口
3.resolve:配置文件后缀名
4.module(loaders): 配置要使用的loader(注意loaders的处理顺序是从右到左的) 编译过程中加载的资源拦截做处理
5.plugins: 配置要使用的插件
配置目录结构和详解: 网上看别人的,github! http://www.imooc.com/article/4617
三:学习参考资源
1.http://www.jianshu.com/p/b95bbcfc590d http://www.cnblogs.com/zhengjialux/p/5861845.html (基础教程)
2.http://webpackdoc.com/module-system.html(官方中文文档:简单易懂,相当不错)
3.https://webpack.js.org/concepts/(官网,非常的不错哦! 练习英文阅读能力)
http://webpack.github.io/docs/list-of-plugins.html(同上哦)
http://survivejs.com/webpack/webpack-compared(构建工具比较文档)
4.https://zhuanlan.zhihu.com/p/20367175?columnSlug=FrontendMagazine(知乎)
5.http://www.open-open.com/lib/view/open1471590235833.html(项目发布必看)
6.http://www.cnblogs.com/liuyt/p/5810042.html(css autoprefixer!)
http://blog.csdn.net/github_26672553/article/details/52107165
7.http://www.cnblogs.com/tugenhua0707/p/4793265.html(有实例demo哦,不错)
8.https://segmentfault.com/a/1190000002551952(入门必看哦! 这个相当的nice)
四:遇到的坎儿
1.人必须首先学会靠自己!不能指望别人! 成年人了!
2. webpack无法生成目录和文件?
答:命令的问题; webpack才是编译处理哦! webpack-dev-server处理后编译的结果在内存中。
3.读人家的webpack配置文件哦! 不懂得查资料学习!
4.看报错信息 认真的看!
其他同类工具:
1.gulp grunt
2.http://fis.baidu.com/fis3/docs/beginning/release.html#/docs/beginning/release.html#CssSprite%E5%9B%BE%E7%89%87%E5%90%88%E5%B9%B6 (百度的哦 文档是中文的)
疑惑:
1.自动化构建工具、模块规范、模块化管理工具 ?
答:会用 Less 去写 CSS,会用 Jade 去写 HTML,会用 Browserify 去模块化、为非覆盖式部署的资源加 MD5 戳等等。所有的一切,如果用手动来做,简直要疯 了!而自动化构建工具,就是为我们完成这一套重复而机械的工作的。
https://www.zhihu.com/question/35595198/answer/67223812
https://segmentfault.com/q/1010000004217785/a-1020000004217853
2.npm? npm仓库?
3.镜像?
4.语法糖: duck type,人本接口,最小接口,约定优于配置,广义来讲都是一些思想上的"语法糖"。
增加程序的可读性,从而减少程序代码出错的机会。
前端构建工具 webpack的更多相关文章
- webpack前端构建工具学习总结(一)之webpack安装、创建项目
npm是随nodeJs安装包一起安装的包管理工具,能解决NodeJS代码部署上的很多问题: 常见的使用场景有以下几种: 允许用户从NPM服务器下载别人编写的第三方包到本地使用. 允许用户从NPM服务器 ...
- webpack前端构建工具学习总结(二)之loader的使用
Webpack 本身只能处理 JavaScript 模块,如果要处理其他类型的文件,就需要使用 loader 进行转换. Loader 可以理解为是模块和资源的转换器,它本身是一个函数,接受源文件作为 ...
- webpack前端构建工具学习总结(四)之自动化生成项目中的html页面
接续上文:webpack前端构建工具学习总结(三)之webpack.config.js配置文件 插件的介绍文档:https://www.npmjs.com/package/html-webpack-p ...
- 前端构建工具gulp使用
前端自动化流程工具,用来合并文件,压缩等. Gulp官网 http://gulpjs.com/ Gulp中文网 http://www.gulpjs.com.cn/ Gulp中文文档 https://g ...
- 前端模块化工具-webpack
详解前端模块化工具-webpack webpack是一个module bundler,抛开博大精深的汉字问题,我们暂且管他叫'模块管理工具'.随着js能做的事情越来越多,浏览器.服务器,js似乎无处不 ...
- (转载)前端构建工具gulp使用
前端构建工具gulp使用 前端自动化流程工具,用来合并文件,压缩等. Gulp官网 http://gulpjs.com/ Gulp中文网 http://www.gulpjs.com.cn/ Gulp中 ...
- 前端构建工具gulp
前端构建工具gulp使用 前端自动化流程工具,用来合并文件,压缩等. Gulp官网 http://gulpjs.com/ Gulp中文网 http://www.gulpjs.com.cn/ Gul ...
- parceljs 基本使用———又一个前端构建工具
备注: 又一个新的前端构建工具 1. 安装 yarn global add parcel-bundler 2. 初始化项目 yarn init -y 3. 基本代码 a. 创建 index. ...
- 前端读者 | 前端构建工具Gulp
@羯瑞 整理 前言 前端工具现在层出不穷,网上搜下一大片,就看你怎么去使用了,基于项目看用什么样的构建工具.有的工具提供的功能还是非常强大的. FIS.百度团队的产品.现在百度的多个产品中使用.面向前 ...
随机推荐
- CentOS 6.3下配置软RAID(Software RAID)
一.RAID 简介 RAID 是英文Redundant Array of Independent Disks 的缩写,翻译成中文意思是“独立磁盘冗余阵列”,有时也简称磁盘阵列(Disk Array). ...
- Redis复制原理
无论是在集群中还是主从结构中,redis新加入的节点和已有主(从)节点的消息同步都是通过sync命令的形式 下面来实践一下redis的同步机制, 新建主服务器于从服务器 主 从: 这是正常的主从结 ...
- Caffe 抽取CNN网络特征 Python
Caffe Python特征抽取 转载请注明出处,楼燚(yì)航的blog,http://www.cnblogs.com/louyihang-loves-baiyan/ Caffe大家一般用到的深度学 ...
- Stanford机器学习笔记-5.神经网络Neural Networks (part two)
5 Neural Networks (part two) content: 5 Neural Networks (part two) 5.1 cost function 5.2 Back Propag ...
- js的event.srcElement与event.target(触发事件对象)
IE下,event对象有srcElement属性,但是没有target属性; Firefox下,event对象有target属性,但是没有srcElement属性.但他们的作用是相当的,即: fire ...
- centos7下彻底卸载LibreOffice方法【转载】
http://linux.it.net.cn/CentOS/course/2014/0720/3211.html你可以尝试 yum erase libreoffice\* 或者 yum remove ...
- linux下安装安装pcre-8.32 configure: error: You need a C++ compiler for C++ support
linux下安装安装pcre-8.32./configure --prefix=/usr/local/pcre 出现以下错误configure: error: You need a C++ compi ...
- Vue系列: 如何通过组件的属性props设置样式
比如我们要在vue中显示百度地图,然后将相关的代码包装成组件,然后需要由外部来设置组件的高度,关于props的介绍,可以参考: http://cn.vuejs.org/guide/components ...
- logstash搭建日志追踪系统
前言 开始博客之前,首先说下10月份没写博客的原因 = =. 10月份赶上国庆,回了趟老家休息了下,回来后自己工作内容发生了点改变,开始搞一些小架构的东西以及研究一些新鲜东西,当时我听到这个消息真的是 ...
- opencv5-objdetect之级联分类器
这是<opencv2.4.9tutorial.pdf>的objdetect module的唯一一个例子. 在opencv中进行人脸或者人眼 或者身体的检测 首先就是训练好级联分类器,然后就 ...