之前咱们敲静态页面都是写好html,css, js,而后再去刷新浏览器,艾尼马又不行,有从新写过再刷新,一个页面下来按chrl+r的次数可以让你的键盘多活好几天,要不会刷新快捷按钮那不得手残了都。
后来,grunt,gulp等工具应运而生,固然它们不止这个功能,但却很好地减轻了咱们的负担。这篇文章介绍一些如何使用这些工具使构建页面变得简单高效。这只是我的的目前在用的不成熟的方案,更专业的还请参考百度FIS。css
工具 | 做用 |
---|---|
nodejs | 提供执行环境 |
gulp / grunt | 自动化 |
sass | css预编译 |
compass | sass工具库 |
bower | 前端框架/库管理 |
项目的目录结构也是颇有讲究的,目录结构好的话可能事半功倍,来看看个人目录结构:html
+++ Project 主目录前端
+++ dist 发布代码目录
+++ js 产出js
+++ css 产出css
+++ imgs 产出images
+++ libs 项目以来框架/库
+++ pages 产出页面
+++ src 生产代码目录
+++ js 源js
+++ img 源图片
+++ sass 源css
+++ pages 源页面
+++ public 复用页面
+++ node_modules gulp组件
+++ gulpfile.js gulp任务配置
+++ package.json gulp插件管理node
3.1 : nodejs
Node 是一个服务器端 JavaScript 解释器,提供模块管理,为后面用到的gulp,grunt,bower等提供了一个执行环境。固然不止这些功能。
3.2 : sass
提供css预编译,css的函数式编程,方便快捷,有趣。
3.3 : compass
sass的工具库,至关于js与jquery的关系,compass为sass提供了丰富的插件模块,rest,css3,layout,让你编写sass更加快捷。sass为css提速,compass为sass提速,组合的力量仍是蛮大的。
3.4 : gulp / grunt
gulp和grunt,用过二者以后,我更倾向于gulp,由于gulp配置任务简单,和grunt不是一个量级的。
3.5 : bower
包依赖管理工具,须要任何框架的时候,咱们没必要再到网上去下载再使用了,直接使用bower命令便可下载使用,还解决各个库之间的兼容性问题,好比bootstrao3.0须要jquery1.9.1以上的版本,则破环这个关系以后它会智能提醒你。但目前我还只是把它看成下载器,因此目录中并无bower的管理目录。jquery
这里就使用gulp举例说明了。css3
gulp为咱们提供了丰富的组件,那咱们构建页面会须要哪些组件:git
browser-sync :功能强大,配置gulp服务器,自动刷新
gulp-sass :编译sass
gulp-file-include :使静态页面具备文件访问能力,实现页面模块复用
gulp-rename :文件重命名
gulp-concat :文件合并
gulp-uglify :文件压缩
gulp-imagemin :图片压缩github
不彻底,不详细,仅供记录,具体请点击文章各个链接学习。编程