[工具]前端自动化工具grunt+bower+yoman
安装过程
- 安装nodejs
- 安装grunt,bower,yoeman
命令:(-g 表示全局安装,否则安装到当前目录下)
npm install -g grunt-cli
npm install -g yo
npm install -g bower
删除已安装:
npm unintall -g yo
yoman -- “脚手架”
- 针对不同web工程,安装相应yoman“脚手架”生成器,eg:angular工程
npm install -g generator-angular
- 创建项目文件夹(注意不要有-,空格等其他符号)
mkdir testAngular
cd testAngular
- 生成angular项目,eg:项目名称为“angularProject”
yo angular angularProject
- 查看node项目,查看package.json文件,包含生成项目基本信息。

name为项目名称,而非所在文件夹名称,version为版本号,dependencies为项目运行需要的依赖环境,devDpendencies为项目开发所需要的依赖环境。^表示版本宽松依赖,主版本号符合即可,再执行npm install会自动更新为最近的版本。~表示最小的版本号更新。
文件功能
- node-modules:存放项目开发时需要的依赖环境
- test:测试时使用的文件
- editorconfig:代码风格设置
其他命令
- ls(显示文件夹下文件列表)
- clear(清屏)
- rm (删除)
- touch (新建一个文件)
bower -- 包管理工具##
bower是一个包管理器,可以安装需要的框架开发包,eg:jquery
bower install jquery
安装组件包
bower install bootstrap
如果组件比较小众,没有在bower注册,可按以下方式安装:
- github短语安装

如图是jquery在github的短语名,假设jquery没有在bower注册,可以用以下命令安装它
bower install jquery/jquery
- 通过项目完整github地址安装

bower install https://github.com/jquery/jquery.git
- 直接通过url安装
bower instal http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
bower init
在当前文件夹下生成bower.json文件,根据bower.json文件安装所需的组件和包
bower init
将工具包安装成devDenpendencies
bower install angular --save-dev
将工具包安装成运行环境依赖
bower install angular --save
.bowerrc
{
"directory":"bower_components",
"proxy":"http://prox.aaa.com:8080", //代理
"https-proxy":"http://prox.aaa.com:8080",
"timeout":60000 //单位毫秒
}
grunt
grunt中task,option,target的举例

compass为一个task,opitions说明具体完成什么操作。dist和server都是target,表示该task针对谁。
运行单个task,eg:tast为compass
grunt compass
只针对某个target运行单个task
grunt compass:dist
将task组合起来,一起运行,在Gruntfile.js中有最后的配置:

grunt build
老项目如何整合grunt
- 创建项目文件夹以及文件
- 创建package.json
npm init
npm install grunt --save-dev
npm install grunt --save
- 安装load-grunt-tasks插件
npm install load-grunt-tasks --save-dev
- 安装time-grunt插件
npm install time-grunt --save-dev
- 编写Gruntfile.js文件
npm install grunt-contrib-copy --save-dev 官方文件拷贝
npm install grunt-contrib-clean --save-dev 官方文件删除
Gruntfile.js文件中添加copy和clean两个target
开源协议
MIT BSD ISC Apache GPL
查看端口占用
列出端口
netstat -ano
搜索目的端口
netstat -aon|findstr "49157"
搜索目的端口对应PID指向的应用
tasklist|findstr "2720"
grunt命令
- grunt serve
- grunt serve --allow-remote 包括以下几个小task:
- wiredep:根据bower.json配置项目依赖,在相应html等文档中加入引用连接
- cocurrent:server: 把sass文件编译成css文件,复制到.tmp文件下
- autoprefixer: 添加厂商前缀
- connnect:livereload
- watch:监听本地文件修改
[工具]前端自动化工具grunt+bower+yoman的更多相关文章
- 前端自动化工具gulp自动添加版本号
之前,我介绍了学习安装并配置前端自动化工具Gulp,觉得gulp确实比grunt的配置简单很多,于是我决定再深入学习一下gulp,就去网上查了资料,发现gulp还可以自动添加版本号,这个功能就为我平时 ...
- 学习安装并配置前端自动化工具Gulp
Gulp和所有Gulp插件都是基于nodeJs来运行的,因此在你的电脑上需要安装nodeJs,安装过程请移驾安装并配置前端自动化工具--grunt.安装完成后,通过运行cmd进入DOS命令窗口,如图: ...
- Node.js前端自动化工具:gulp
前端自动化工具 -- gulp 使用简介 gulp是基于流的前端自动化构建工具. 之前也谈到了 grunt的用法,grunt其实就是配置+配置的形式. 而gulp呢,是基于stream流的形式,也就是 ...
- 前端自动化工具 -- grunt 使用简介
grunt作为一个前端构建工具,有资源压缩,代码检查,文件合并等功能. 下面就简单了解grunt的使用. 一.环境配置 grunt是基于nodejs的,所以需要一个 nodejs 环境,未了解的可以 ...
- 前端自动化工具 -- Gulp 使用简介
gulp是基于流的前端自动化构建工具. 之前也谈到了 grunt的用法,grunt其实就是配置+配置的形式. 而gulp呢,是基于stream流的形式,也就是前一个函数(工厂)制造出结果,提供后者使用 ...
- gulp 前端自动化工具
一开篇 在前端开发的过程中,我们经常会碰到压缩.合并.图片script 等,于是就有了gulp 前端自动化构建工具,它能帮你在前端开发中,节省时间. 1,安装 node.js 因为gulp 构建工具是 ...
- 前端自动化工具 -- gulp https://angularjs.org/
gulp是基于流的前端自动化构建工具. gulp是基于stream流的形式,也就是前一个函数(工厂)制造出结果,提供后者使用. 同样的,也是包括基本用法和各插件的使用. 二.基本用法--插件使用 gu ...
- 前端自动化工具 gulp
最近一个项目才接触这些自动化工具 webpack gulp grunt 等等.. webpack 可以引入模块 和 压缩 gulp 和 grunt 可以压缩 这里只说下gulp 因为项目里只用到gu ...
- 安装并配置前端自动化工具-gulp
由于现在前端自动化已经很有必要了,所以我今天死皮烂脸的找了2位前端大咖帮助我安装和配置gulp,讲真,这一步步弄下来直到安装配置成功,到现在还是迷迷糊糊,不过我还是把这些步骤给记录下来,以防下次不记得 ...
随机推荐
- jQuery中bind,live,delegate与one方法的用法及区别解析
bind( )方法用于将一个处理程序附加到每个匹配元素的事件上并返回jQuery对象. .bind(eventType[, evnetData], Handler(eventObject)) 其中,参 ...
- 用UBOOT自带loadb命令加载应用程序到SDRAM中运行的方法
S3C44B0开发板中,用UBOOT自带loadb命令加载应用程序到SDRAM中运行的方法 1.开发板说明: 开发板上已有移植好的UBOOT运行. 2.交叉编译工具链为arm-linu-g ...
- iOS CoreBluetooth 教程
去App Store搜索并下载“LightBlue”这个App,对调试你的app和理解Core Bluetooth会很有帮助. ================================ Cor ...
- 【基础练习】【vector】codevs3393 序列倒置
版权信息 转载请注明出处 [ametake版权全部]http://blog.csdn.net/ametake欢迎来看 题目非常easy,本质还是练习一下vector 题目描写叙述 Descriptio ...
- C#视频总结
C#视频利用了四天看完了,由于有VB的基础.所以看起来并没有感觉太吃力.在主要的数据类型.运算之间没有多大的差别. 在循环控制语句上也就是大同小异.在类.继承和多态方面可能有一些陌生,可是经过了前期的 ...
- js数组的操作及数组与字符串的相互转化
数组与字符串的相互转化 <script type="text/javascript">var obj="new1abcdefg".replace(/ ...
- DataGrid 使用模型列后实现点击列名称排序
DataGrid 使用模型列后实现点击列名称排序 代码如下: <DataGridTemplateColumn Header="型 号" SortMemberPath=&quo ...
- SVN库迁移整理方法总结
有时候需要从一台机器迁移svn存储库到另外一台机器,如果数据量非常大的话,没有好的方法是很不方便的,其实迁移svn跟迁移mysql差不多,也有导出导入的方案 以下是subversion官方推荐的备份方 ...
- vsftp的设置选项
设置匿名用户上传的文件的权限: anon_umask= 匿名用户新增文件的umask 数值.默认值为077. VSFTPD的设置选项 VSFTPD的配置文件/etc/vsftpd/vsftp ...
- 利用 Makefile 写的小程序
1.建立一个工程 2.写一个进度条的程序(原理就是在同一位置重复打印某一个字符(变化),达到动态显示的效果) 所以说我们这里只用回车'\r',覆盖这一行以前的输出,重新向缓冲区写数据刷新缓冲区,就能达 ...