zoukankan      html  css  js  c++  java
  • gulp的安装和配置

    gulp的安装和使用方法

    1先是有node为前提的,

    2安装淘宝镜像

      2.1因为很多npm包都是国外的,所以安装起来很慢,所以我们可以利用淘宝的镜像服务器来进行安装后续的包,速度和成功率会高很多。 
     所以首先打开cmd,输入指令: npm --registry=https://registry.npm.taobao.org install -g cnpm

    3是安装gulp

     首先,新建一个用来项目开发的空文件夹,然后再命令行工具里cd到文件夹中(有git的童鞋在文件夹里直接右键 git bash here也是Ok的) 
       然后执行以下 npm init,会发现文件夹中多出一个 
       然后在命令行中执行 npm init,效果如下图,一路无脑回车即可 
    这里写图片描述 
       执行完成后你会发现原本的空文件夹里多出了一个叫package.json的文件。说明执行成功啦。 
      完成后接着执行指令: 
      npm install --save-dev gulp 
    注意:1.命令行工具一定要进入到这个用来项目开发的空文件夹 
       2.这里不要使用cnpm,使用npm即可(亲身经历,用cnpm之后运行gulp的时候会报错,大概是cnpm的某些包不全)

      接下来需要等待一会儿,完成后,需要去文件夹的根目录中,新建一个名为gulpfile.js的javascript文件,写入内容如下:

    1 var gulp = require('gulp');
    2 
    3 gulp.task('default', function() {
    4   // 将你的默认的任务代码放在这
    5 });

    最后在命令行里执行指令: glup 回车 
    这里写图片描述 
    效果如上图,则说明glup已经成功安装在项目中啦~ 

    ----以上引用的是http://www.cnblogs.com/YuuyaRin/p/6159809.html

     3.1--save-dev和--save的区别

    • 把gulp包安装到node_modules目录中
    • 在package.json的dependencies属性下添加gulp
    • 之后运行npm install命令时,自动安装gulp到node_modules目录中
    • --save---之后运行npm install --production或者注明NODE_ENV变量值为production时,自动安装gulp 到node_modules目录中(开发完后需要用到依赖包,如jquery等)
    • --save-dev--之后运行npm install --production或者注明NODE_ENV变量值为production时,不自动安装gulp 到node_modules目录中(发布后用不到它,而只是在我们开发才用到它

    4使用gulp压缩和合并js文件

    在之前建立的项目中写入,在根目录新建js文件夹,并在文件夹中新建两个js文件,代码如下:

    index.js:

    1. var index={};  
    2. index={  
    3.     test:function(argument){  
    4.         console.log('test');  
    5.     }  
    6. }  
    7. index.test();  


    main.js:

    1. var main = {};  
    2. main.test=function(argument){  
    3.     console.log("main test");  
    4. }  
    5. main.test();  

    在根目录新建文件夹build,并在build里新建一个空的js文件:all.min.js

    在根目录下新建index.html ,在其中引用build下的all.min.js。

    index.html:

    1. <script type="text/javascript" src="build/all.min.js"></script>  

    接下来编辑gulpfile.js文件,来告诉gulp我们要把index.js,main.js合并起来压缩再写入all.min.js中

    gulpfile.js:

    1. var gulp = require('gulp');//gulp自身  
    2. var uglify= require('gulp-uglify');//<span style="font-family: Arial, Helvetica, sans-serif;">引入压缩组件</span>  
    3. var concat = require('gulp-concat');//<span style="font-family: Arial, Helvetica, sans-serif;">引入合并组建</span>  
    4.   
    5. var paths = {  
    6.     scripts:['js/index.js','js/main.js']  //['js/*.js','!js/changDateFormat.js']排除所有文件中的changDateFormat.js文件
    7. //定义要操作的文件路径  
    8.   
    9.   
    10. gulp.task('default', function() {   //当这里"default"写成其他的名字(如:asd)时,在运行时就余需要用 gulp asd
    11.   gulp.src(paths.script)//找到项目下paths变量所定义的script文件  
    12.   .pipe(uglify())//压缩  
    13.   .pipe(rename({ suffix: "-min",prefix:"bon-",extname:".md"}))//suffix加后缀,prefix加前缀,extname修改文件格式(是js还是html等)
    14.   .pipe(concat('all.min.js'))//输入到all.min.js中  
    15.   .pipe(gulp.dest('build'));//指定目录  
    16. });  

    tips:gulp的执行流程采用了流式操作,每一个pipe()可以理解成,上一个操作的输出,就是下一个操作的输入,比如uglify()压缩后输出的,就是concat要输入到文件中的,而concat输出的文件,是gulp.dest要加入的目录中的,可以理解成每部操作都return了下一步要使用的东西。

    最终目录结构如下:

    接下来就可以在命令行工具中cd到项目的根目录中执行gulp指令了。

    此时也许会出现 Cannot find module 'gulp-uglify'这样的报错,是因为gulpfile所require的gulp-uglify和gulp-concat插件并不存在,所以可以利用npm在项目中装入即可:

    npm install --save-dev gulp-uglify    回车

    npm install --save-dev gulp-concat   回车

    可同时下载gulp-uglify和gulp-concat(用"空格"将两个文件隔开就好)npm install --save-dev gulp-uglify gulp-concat

    4.1引入组件

    var gulp = require("gulp");//导入glup
    var sass = require("gulp-sass");//拷贝并编译scss
    var server = require("gulp-connect");//建立服务器
    var concat = require("gulp-concat");//合并js文件
    var uglify = require("gulp-uglify");//压缩js文件
    var minifyCss = require("gulp-minify-css");压缩css
    var imagemin = require("gulp-imagemin");压缩图片
    var rename = require("gulp-rename");//文件重命名
    var rev = require("gulp-rev");//给静态资源文件名添加一个哈希值后缀
    var revCollector = require("gulp-rev-collector");//自动添加版本号
    var autoprefixer = require("gulp-autoprefixer");//css添加浏览器后缀
    var htmlmin = require("gulp-htmlmin");//html页面进行压缩

     

    安装完成后再次执行gulp指令,成功后,可以查看一下我们原本空的all.min.js文件,可以看到main.js和index.js已经在all.min.js中压缩合并了

    1. var index={};index={test:function(e){console.log("test")}},index.test();  
    2. var main={};main.test=function(n){console.log("main test")},main.test();  

    然后运行一下我们的index.html,打开浏览器控制台,会发现两个js的内容成功输出:



    说明gulp成功执行了JS文件的合并与压缩的操作。

     

  • 相关阅读:
    ORACLE 查看进程数,已执行任务数, 剩余任务数,删除指定任务
    ORACLE 收集统计整个用户数据
    解决Hystrix dashboard Turbine 一直 Loading…… 及其他坑
    利用 Maven 构造 Spring Cloud 微服务架构 模块使用 spring Boot构建
    AES加解密
    JAVA POI XSSFWorkbook导出扩展名为xlsx的Excel,附带weblogic 项目导出Excel文件错误的解决方案
    JAVA 文件的上传下载
    shell启停服务脚本模板
    JAVA 设计模式之 原型模式详解
    JAVA 设计模式之 工厂模式详解
  • 原文地址:https://www.cnblogs.com/sunnie-cc/p/6382830.html
Copyright © 2011-2022 走看看