Grunt 合并压缩js文件

http://www.cnblogs.com/yexiaochai/p/3594561.html

http://www.cnblogs.com/yexiaochai/p/3602002.html

http://www.cnblogs.com/snandy/archive/2013/03/07/2946989.html

http://www.cnblogs.com/snandy/archive/2013/03/11/2949177.html

http://www.cnblogs.com/snandy/archive/2013/05/20/3088613.html

 

 

 

一。安装node.js

 

运行:node-v0.12.2-x86.msi  系统自动化将环境变量设置好

 

 

二。安装grunt

 

c:\app 下:

 

dos命令进入 app下:

npm install -g grunt-cli

 

(这条命令将会把grunt命令植入系统路径,这样就能在任意目录运行他,原因是每次运行grunt时,它都会使用node的require查找本地是否安装grunt,如果找到CLI便加载这个本地grunt库

然后应用我们项目中的GruntFile配置,并执行任务PS:这段先不要管,安装完了往下看)

 

三。打包zepto:

 

1.创建:package.json

 

{

  "name": "demo",

  "file": "zepto",

  "version": "0.1.0",

  "description": "demo",

  "license": "MIT",

  "devDependencies": {

    "grunt": "~0.4.1",

    "grunt-contrib-jshint": "~0.6.3",

    "grunt-contrib-uglify": "~0.2.1",

    "grunt-contrib-requirejs": "~0.4.1",

    "grunt-contrib-copy": "~0.4.1",

    "grunt-contrib-clean": "~0.5.0",

    "grunt-strip": "~0.2.1"

  },

  "dependencies": {

    "express": "3.x"

  }

}

2.  创建:Gruntfile.js

 

3.  npm install

 

3.  新建 src 目录,写一个 zepto.js 文件(空文件)

 

4.  然后在Gruntfile中新增以下代码:

module.exports = function (grunt) {

  // 项目配置

  grunt.initConfig({

    pkg: grunt.file.readJSON('package.json'),

    uglify: {

      options: {

        banner: '/*! <%= pkg.file %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'

      },

      build: {

        src: 'src/<%=pkg.file %>.js',

        dest: 'dest/<%= pkg.file %>.min.js'

      }

    }

  });

  // 加载提供"uglify"任务的插件

  grunt.loadNpmTasks('grunt-contrib-uglify');

  // 默认任务

  grunt.registerTask('default', ['uglify']);

}

 

5. dos 进入src 目录:  grunt 命令

 

6.  dest 目录生成一个 zepto.min.js 文件

 

 

三。多个js文件合并和压缩:

src 目录下添加:src/zepto.js', 'src/underscore.js', 'src/backbone.js' 这3个js文件

 

如果是合并并压缩:

 

module.exports = function (grunt) {

  // 项目配置

  grunt.initConfig({

    pkg: grunt.file.readJSON('package.json'),

    concat: {

      options: {

        separator: ';'

      },

      dist: {

        src: ['src/zepto.js', 'src/underscore.js', 'src/backbone.js'],

        dest: 'dest/libs.js'

      }

    },

    uglify: {

      build: {

        src: 'dest/libs.js',

        dest: 'dest/libs.min.js'

      }

    }

  });

  grunt.loadNpmTasks('grunt-contrib-uglify');

  grunt.loadNpmTasks('grunt-contrib-concat');

  // 默认任务

  grunt.registerTask('default', ['concat', 'uglify']);

}

 

 

(出现问题:

Local Npm module "grunt-contrib-concat" not found. Is it installed? 

npm install grunt-contrib-concat)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值