web自动化开发环境配置详解
1、安装 nodejs
Grunt和所有grunt插件都是基于nodejs来运行的, https://nodejs.org/
安装完成之后在终端 node -v 查看安装版本
2、安装 grunt-CLI
要想使用grunt,首先必须将grunt-cli安装到全局环境中,使用nodejs的“npm install…”进行安装。
安装方法: npm install -g grunt-CLI 回车
注:mac系统在这句话前面加上“sudo”指令
安装完成输入 grunt 回车
3、创建一个网站项目

创建项目名称“project1”子目录为:source(源文件)dist(目标文件)Gruntfile.js(grunt任务配置文件) package.json(开发依赖项)
package.json 基础文件编写

4、给项目安装grunt
在项目文件“project1”下打开终端(命令行)
安装方法:npm-install grunt --save-dev 回车(注意package.json文件内容变化)

项目文件“project1”下回自动生成node_modules文件夹,这里就是存储grunt源文件的地方。
终端运行grunt回车会提示 Warning:Task “default” not found . Use --force to continue.(任务default没有找到),说明grunt安装成功

5、Gruntfile.js 基础文件编写

在运行grunt没有上面Warning提示 而是Done,without errors.

6、安装自己项目中所需要用的grunt插件
6.1、安装html插件 grunt-include-replace
安装方法:npm install grunt-include-replace --save-dev
Gruntfile.js文件中对includereplace的配置信息如下:

6.2、安装css插件 grunt-contrib-sass
安装方法: npm install grunt-contrib-sass --save-dev
Gruntfile.js文件中对sass的配置信息如下:

6.3、安装css插件 grunt-postcss
安装方法: npm install grunt-postcss --save-dev
Gruntfile.js文件中对postcss的配置信息如下:

6.4、安装postcss插件 grunt-autoprefixer
安装方法: npm install grunt-autoprefixer --save-dev
Gruntfile.js文件中对autoprefixer的配置信息如上图:
6.5、安装css插件 grunt-contrib-cssmin
安装方法: npm install grunt-contrib-cssmin --save-dev
Gruntfile.js文件中对cssmin的配置信息如下:

6.6、安装image插件 grunt-spritesmith
安装方法:npm install grunt-spritesmith --save-dev
Gruntfile.js文件中对sprite的配置信息如下:

6.7、安装image插件 grunt-contrib-imagemin
安装方法:npm install grunt-contrib-imagemin --save-dev
Gruntfile.js文件中对imagemin的配置信息如下:

6.8、安装全局插件 grunt-contrib-connect
安装方法:npm install grunt-contrib-connect --save-dev
Gruntfile.js文件中对connect的配置信息如下:

6.9、安装contrib-copy插件(监控项目文件的插件)
安装方法:npm install grunt-contrib-copy --save-dev
Gruntfile.js文件中对copy的配置信息如下:

6.10、安装contrib-watch插件(监控项目文件的插件)
安装方法:npm install grunt-contrib-watch --save-dev
Gruntfile.js文件中对watch的配置信息如下:

6.11、Gruntfile.js整体配置如下:


6.12、源文件目录结构

7、web自动化环境已经搭好,其他项目要使用项目的环境操作如下:
7.1、新建项目文件project2文件夹
7.2、将已经搭建好的项目中的package.json文件拷贝到新项目中
7.3、新项目中打开命令行(终端)
7.4、执行命令npm install (安装package.json中所有的插件)
7.5、将搭建好的项目中设置好的Grunt.js文件拷贝进来(需要修改的地方自行设置)
7.6、项目结构需要与原项目保持一致即可,需要更改自行设置
7.7、ok新的项目环境已经搞定,运行试试吧。
注:各插件的功能
全局插件:
*grunt-contrib-watch //监控文件以及保存文件后索要执行的任务
grunt-contrib-clean //清空、删除文件
grunt-contrib-copy //copy文件,有些不需要任何修改的文件需要赋值到其他位置
grunt-contrib-concat //合并对个文件为一个文件
*grunt-contrib-connect //构建实时预览开发环境
Html插件:
*grunt-include-replace //可以外部引入其他的html文件
Css插件:
*grunt-contrib-sass //编译scss文件成css文件
*grunt-contrib-cssmin //压缩css文件
*grunt-postcss //编译css文件放在指定的位置
Js插件:
grunt-contrib-jshint //js语法检查
grunt-contrib-uglify //压缩js文件
Image插件:
*grunt-contrib-imagemin //压缩image
*grunt-spritesmith //将多张image拼接到一张图片上生成类,调用类名使用图片
web自动化开发环境配置详解的更多相关文章
- AngularJS + CoffeeScript 前端开发环境配置详解
AngularJS 号称 '第一框架' ('The first framework') 确实是名不虚传.由其从jQuery中完全转入AngularJS后就有无法离开他的感觉了.虽然AngularJS的 ...
- weex和vue开发环境配置详解(配置系统变量等等)
本文详细讲解如何搭建weex和vue开发环境 安装java 现在java安装包,网上的安装包都是国外的,很难下载下来 就用这个链接下载,亲测无毒,http://www.wmzhe.com/soft-3 ...
- Nginx+Tomcat的服务器端环境配置详解
这篇文章主要介绍了Nginx+Tomcat的服务器端环境配置详解,包括Nginx与Tomcat的监控开启方法,需要的朋友可以参考下 Nginx+tomcat是目前主流的Javaweb架构,如何让ngi ...
- Spark Streaming揭秘 Day28 在集成开发环境中详解Spark Streaming的运行日志内幕
Spark Streaming揭秘 Day28 在集成开发环境中详解Spark Streaming的运行日志内幕 今天会逐行解析一下SparkStreaming运行的日志,运行的是WordCountO ...
- 搭建Android开发环境附图详解+模拟器安装(JDK+Eclipse+SDK+ADT)
——搭建android开发环境的方式有多种,比如:JDK+Eclipse+SDK+ADT或者JDK+Eclipse+捆绑好的AndroidSDK或者Android Studio. Google 决定将 ...
- eclipseIDE for javaee developers 开发环境搭建详解图文
使用eclipse真的有年头了,相信java程序员没有不知道它的,最近在给团队中新来的应届生做指导,专门讲解了一下Eclipse开发环境的搭建过程,一是帮助他们尽快的熟悉IDE的使用,二也是保证团队开 ...
- maven环境配置详解,及maven项目的搭建及maven项目聚合
首先:Maven 3.2.1:不同版本中仓库中文件是不一样的,Maven运行,先找用户配置,再找全局配置 1. Maven全局配置:全局统一的配置文件,在maven的安装目录中 2. Maven用户配 ...
- Java开发环境搭建详解
一.jdk安装与配置 jdk7于3月份刚刚发布,目前eclipse的最新版本中还没有提供对jdk7的编译支持,所以我们只下载jdk6. 下载地址:http://download.java.net/jd ...
- Centos7 + Python3.6 + Django + virtualenv + gunicorn + supervisor 环境配置详解
跟着网上的教程走发现行不通阿!好多都是写个大概,而且每人的环境都是有些许差异的,比如说权限问题阿,等等都会造成安装的失败 说明:本教程在你已经拥有Centos7系统,已经安装好nginx服务器,已经安 ...
随机推荐
- mongoose入门
概述 像Mysql和Mongodb这样的数据库,一般都是在命令行或者工具里面进行操作,如果想在node搭建的服务器上面操作,就必须要利用特殊的模块的.其中操作Mongodb数据库需要用到mongoos ...
- [vuejs] 深入响应式原理
深入响应式原理 现在是时候深入一下了!Vue 最独特的特性之一,是其非侵入性的响应式系统.数据模型仅仅是普通的 JavaScript 对象.而当你修改它们时,视图会进行更新.这使得状态管理非常简单直接 ...
- flask框架1
说flask框架之前,必须得提一下web框架,他的作用是为了利用互联网交流工作文档,我们为什么要使用框架,因为框架的稳定性和可扩展性强并且可以降低开发难度,提高开发效率.总的来说就是避免做无用功,重复 ...
- POJ 2562
#include<iostream> #include<algorithm> #define MAXN 15 using namespace std; //int rec[MA ...
- 题外话 -- windows10系统C盘空间变大 CPU莫名跑满
场景描述: 安装windows10一段时间了,发现C盘空间越来越小 CPU有时候,莫名其妙的跑满,造成操作卡顿. 如何处理参考: windows10 C盘空间清理:https://jingyan.ba ...
- Django模版语言自定义标签-实现前端 关联组合过滤查询
前端关联 组合过滤查询 实现效果如图: models.py 创建表代码 from django.db import models # Create your models here. class Le ...
- opencv2函数学习之blur,GaussianBlur,medianBlur和bilateralFilter:实现图像平滑处理
在opencv2中,可能使用blur对图像进行平滑处理,这种方法就是最简单的求平均数. 平滑 也称 模糊, 是一项简单且使用频率很高的图像处理方法. 平滑处理的用途有很多, 但是在很多地方我们仅仅关注 ...
- 监督学习——AdaBoost元算法提高分类性能
基于数据的多重抽样的分类器 可以将不通的分类器组合起来,这种组合结果被称为集成方法(ensemble method)或者元算法(meta-algorithom) bagging : 基于数据随机抽样的 ...
- 一对一Socket简单聊天的实现
今天终于调试通了Socket一对一的聊天,每次发送连接请求后,将用户名发送到Socket中去,然后将用户名和新建的socket存到map中,然后根据用户名来确定接收方是谁,以实现一对一的聊天功能. 上 ...
- Objective-C 字符串与数值互相转换
Convert NSString to int NSString *aNumberString = @"123"; int i = [aNumberString intValue] ...