Gruntjs提高生产力(二)
摆脱混乱的html文件中开发,拥有development与product模式是我们梦寐以求的。
我买的需求是:
1.产出一定格式的目录结构,以供日常开发使用,脚手架功能。
2.在开发模式环境中我们按照文件类型不同分开开发,甚至html也分成小的区块widget化利于协作开发和维护,产出时合并成一个html,外联资源inline化。
3.在编码过程中实时保存并自动刷新浏览器,可以查看结果。
4.编码过程中进行代码检查,单元测试。
5.产出环境我们把这些碎片文件按照逻辑顺序压缩合并打包到一起组合成html,减少请求和代码体积。
6.上线后生成开发文档。
grunt 有没有这样的能力呢,接下来我们一起探索。
1.脚手架功能
grunt-init插件
npm install -g grunt-init
装好后要安装模板
git clone git://github.com/gruntjs/grunt-init-gruntplugin.git ~/.grunt-init/gruntplugin
自己也可以根据要求创建自定义模板。
2.include功能
grunt-incoludes插件 (第三方)
npm install grunt-includes
include "content.html" //注意指令前后不要添加任何符号,会影响正则匹配(本人在最后面添加了一个;被卡了很久)
3.刷新浏览器
a.自动刷新功能
目前来说只实验了chrome浏览器,有关刷新的插件有两款。

livepage

livereload
这两款插件在chrome store中可以找到,都可以实现修改文件就刷新浏览器的功能。大家可以看看介绍,自行选择。
我选择livepage,因为启动后比较醒目。
b.自动保存我用的是webstorm 。。。。。所以没有去找这个功能。
4.
a.代码检查
grunt-contrib-csslint
grunt-contrib-jshint
b.单元测试
grunt-contrib-qunit
5.压缩、打包
npm install grunt-contrib-cssmin//css压缩
npm install grunt-contrib-uglify//注明的js压缩工具
npm install grunt-contrib-imagemin//图片压缩
npm install grunt-contrib-compress//打压缩包
6.产出文档
grunt-jsdoc (git被墙了,要用代理才能装)
npm install jsdoc@"<=3.3.0"
contrib-yuidoc
npm install grunt-contrib-yuidoc
jsdoc的文档请移步
7.常用插件
contrib-clean 清理文件夹
npm install grunt-contrib-clean
contrib-copy 拷贝文件夹
npm install grunt-contrib-clean
这样说来grunt完全能够满足我们日常中的需求。
怎样获取自己想要的插件呢?
1.grunt官网插件的名字都很明了,ctrl+f直接搜
2.npm 使用关键字搜索
3.github
4.chrome商店,会找到意想不到的好东西
-----
发现插件还蛮多的,写了不少。约定好的实例讲解只能放到下一讲了。
Gruntjs提高生产力(二)的更多相关文章
- Gruntjs提高生产力(三)
以下例子来自真实项目,有所删减 grunt-test project 目录结构如下 一我的目的: 1.在src-dev目录中开发最终产出于src目录 2.src-dev中的index目录相当于一个wi ...
- Gruntjs提高生产力(四)
思考: 1.grunt以工程为单位安装插件? 如果有新工程就要重新安装插件或者把安装好的插件拷贝过去.这样很麻烦,解决方案是需要用grunt的项目统一放在grunt项目中. 2.每次需要针对项目编写g ...
- Gruntjs提高生产力(一)
gruntjs是一个基于nodejs的自动化工具,只要熟悉nodejs或者又一定js经验就可以熟练应用. 1. 安装 a. 保证已安装了nodejs,并带有npm b.安装客户端命令行工具,grunt ...
- [置顶] 提高生产力:开源Java工具包Jodd(Java的”瑞士军刀”)
官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + t ...
- [置顶] 提高生产力:Web开发基础平台WebCommon的设计和实现
Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架 ...
- js基础提高(二)
JavaScript基础提高(二) 上篇写的是JavaScript的历史.基本的数据类型和基本的语法进填的话讲的就深入一些了. js的函数 1.js函数定义的方式 (1)普通方式 语法:functio ...
- 【转】java提高篇(二)-----理解java的三大特性之继承
[转]java提高篇(二)-----理解java的三大特性之继承 原文地址:http://www.cnblogs.com/chenssy/p/3354884.html 在<Think in ja ...
- 提高生产力:开源Java工具包Jodd(Java的”瑞士军刀”)
官方网站:http://jodd.org/ 下载地址:http://jodd.org/download/index.html Jodd=tools + ioc + mvc + db + aop + t ...
- 提高生产力:文件和IO操作(ApacheCommonsIO-汉化分享)
复制.移动.删除.比较.监控.文件读写 等文件和IO操作是编程中比较常用的功能. 幸运的是,Apache Commons IO等开源组件已经帮我们实现了. 我们可以不用重复 ...
随机推荐
- web前端基础——初识HTML
1 HTML概念 HTML(Hypertext Markup Language)即超文本标记语言,是网页的描述语言.它其实是一种描述网页的标准,它通过给需要描述的内容加上标签,浏览器按照HTML语言的 ...
- SpringBoot入门学习(二)
第一讲我们已经讲解了入门Demo,这一讲我们主要讲解包含以下内容 项目内一些属性配置 自定义属性配置 ConfigurationProperties配置 (1)第一个工程创建的时候会自动在工程下创建a ...
- Ubuntu16.04系统Python3相关环境或模块安装
前提:一般用户安装都命令前都需要sudo ,或者在root用户下 1.Ubuntu 16.04 安装PyCharm Ubuntu 16.04 安装PyCharm 本文通过第三方源安装PyCharm,好 ...
- Atom插件无法下载安装解决办法,Atom使用教程,Atom常用插件
使用教程http://wiki.jikexueyuan.com/project/atom/plug-in.html atom通过setting中无法下载插件,通过apm也无法下载插件,可能是网络.co ...
- 摄像头PIN脚功能作用
摄像头PIN脚功能作用,Camera硬件系统分析 9 f E+ E2 b N. j4 M2 U- a. q9 A) T# c& O& C% x+ l5 l! q ...
- 通过自动回复机器人学Mybatis笔记:接口式编程
[接口式编程]尚未遇见Spring --> 代码量反而增加 1.增加约定,减少犯错的可能(不用直接去写字符串 修改点1:命名空间 修改点2:增加接口,方法名与配置文件中的id对应 package ...
- maven项目报Failed to read artifact descriptor
公司私服是个垃圾,处理自定义的jar包外,没有提供到中央仓库的路由,以至于通过maven下载jar包是老是报错. 折腾好久,最后在maven的update project时勾选了force updat ...
- 20145324 《Java程序设计》第1周学习总结
20145324 <Java程序设计>第1周学习总结 教材学习内容总结 1.Java是程序语言.标准规范.代表解决问题的平台 2.三大平台:Java SE(JVM.JRE.JDK与Java ...
- 20145328 《Java程序设计》实验四实验报告
20145328 <Java程序设计>实验四实验报告 实验名称 Andoid开发基础 实验内容 基于Android Studio开发简单的Android应用并部署测试; 了解Android ...
- Centos6优化系统服务脚本
#!/bin/bash SysVer=`cat /etc/redhat-release | awk -F'release' '{print $2}' | awk -F'[ .]+' '{print $ ...