码迷,mamicode.com
首页 > Web开发 > 详细

grunt压缩js文件

时间:2014-10-09 15:15:24      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:des   blog   http   io   使用   ar   java   文件   sp   

使用grunt 工具管理js文件时有几个常用功能例如压缩合并等

 

首先安装node环境,安装grunt

在目录环境下建立自己的项目my_project

添加两个源文件

bubuko.com,布布扣bubuko.com,布布扣
在项目根目录下创建package.json文件
 
{
  "name": "my_project",
  "version": "0.1.0",
  "devDependencies": {
    "grunt": "~*",
    "grunt-contrib-concat": "^0.5.0",
    "grunt-contrib-jshint": "^0.10.0",
    "grunt-contrib-uglify": "^0.6.0"
  }
}

 package.json 具体参数说明参见https://www.npmjs.org/doc/files/package.json.html

运行 npm install 

根目录会出现 node_modules 文件夹以及相应的grunt插件。

如没有再 package.json中写明,使用npm安装也是可以的 npm install grunt-contrib-插件名称 -g(全局安装) --save-dev(写入package.json).

创建 Gruntfile.js

示例如下

module.exports = function(grunt) {
  var pkg = grunt.file.readJSON(‘package.json‘);

  grunt.initConfig({
    pkg: pkg,
     concat: {
            domop: {
                src: [‘src/search.js‘, ‘src/searchbar.js‘,‘src/showimg.js‘],
                dest: ‘dest/domop.js‘
            }
        },
    uglify: {
      options: {
        banner:"\n",
        mangle:false
      },
      build:{
        src:‘dest/domop.js‘,
        dest:‘dest/dest.js‘
      }
    }
  });
  //载入concat和uglify插件,分别对于合并和压缩
    grunt.loadNpmTasks(‘grunt-contrib-concat‘);
    grunt.loadNpmTasks(‘grunt-contrib-uglify‘);

    //注册任务
    grunt.registerTask(‘default‘, [‘concat‘, ‘uglify‘]);
};

  此时使用的是uglify压缩和concat合并

其中mangle 为是否替换变量,false时不替换变量,默认替换。还可为数组

 mangle: {
        except: [‘jQuery‘, ‘Backbone‘]
      }
此时文件中遇到jQuery,Backbone则不进行替换。
banner:为添加注释
 options: {
      banner: ‘/*! <%= pkg.name %> - v<%= pkg.version %> - ‘ +
        ‘<%= grunt.template.today("yyyy-mm-dd") %> */‘
    }
详情见 https://github.com/gruntjs/grunt-contrib-uglify
合并参数链接 https://github.com/gruntjs/grunt-contrib-concat

grunt官网地址为:http://www.gruntjs.org/docs/sample-gruntfile.html
bubuko.com,布布扣

grunt压缩js文件

标签:des   blog   http   io   使用   ar   java   文件   sp   

原文地址:http://www.cnblogs.com/mole/p/4013110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!