node.js grunt文件压缩

对于前段来说,熟悉node的人其实还并不是太多,如果您想入门一门后端语言我建议还是从node入手最好。

我也是最近开始学习node,来谈谈近期对node的学习的心得。

提到node首先就是要安装一大堆的运行环境安装插件等。网上教程有很多,这里不在多说了。

这里主要给大家分享一个非常实用的插件,grunt(下载链接),一般都是直接在node命令行下载

npm install grunt

安装好grunt还需要安装内置插件

grunt-contrib-uglify   //js代码压缩

grunt-contrib-concat   //代码合并

grunt-contrib-cssmin   //css代码压缩

grunt-contrib-less   //less代码转换成css

……官方网站有很多插件,可以根据需要进行安装,这里我们只介绍一个。

安装你需要的插件即可,这里我们安装grunt-contrib-uglify,可以进行代码的压缩;首先建立一个Gruntfile.js文件,配置代码如下

 1 /*js 压缩*/
 2 module.exports = function (grunt) {
 3   // 构建任务配置
 4   grunt.initConfig({
 5     //读取package.json的内容,形成个json数据
 6     pkg: grunt.file.readJSON('package.json'),
 7     //压缩js
 8     uglify: {
 9       //文件头部输出信息
10       options: {
11         banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n'
12       },
13       my_target: {
14         files: [
15           {
16             expand: true,
17             //相对路径
18             cwd: 'js/',
19             src: '*.js',
20             dest: 'dest/js/',
21             rename: function (dest, src) {  
22                   var folder = src.substring(0, src.lastIndexOf('/'));  
23                   var filename = src.substring(src.lastIndexOf('/'), src.length);  
24                   //  var filename=src;  
25                   filename = filename.substring(0, filename.lastIndexOf('.'));  
26                   var fileresult=dest + folder + filename + '.js';  
27                   grunt.log.writeln("现处理文件:"+src+"  处理后文件:"+fileresult);  
28                   return fileresult;  
29                   //return  filename + '.min.js';  
30                 } 
31           }
32         ]
33       }
34     }
35   });
36   // 加载指定插件任务
37   grunt.loadNpmTasks('grunt-contrib-uglify');
38   // 默认执行的任务
39   grunt.registerTask('default', ['uglify']);
40 };

再配置一个package.json文件,代码如下

 1 {  
 2     "name": "cyjs",  
 3     "version": "0.1.0",  
 4     "description": "js for k68.org",  
 5     "homepage": "http://www.k68.org/",  
 6     "author": "firebaby",  
 7     "devDependencies": {  
 8       "grunt": "~0.4.1",  
 9       "grunt-contrib-jshint": "~0.3.0",  
10       "grunt-contrib-concat": "~0.1.1",  
11       "grunt-contrib-uglify": "~0.1.2",  
12       "grunt-contrib-cssmin": "~0.5.0",  
13       "grunt-htmlhint": "~0.9.2"  
14     }  
15 }  

有了这两个文件,我们只需要把要压缩的目标文件放入js文件里,然后node启动 grunt 命令node就会帮我们完成压缩了,如果报错记得查看是不是路径不对~

posted @ 2016-11-22 09:41  chengJun—  阅读(338)  评论(0编辑  收藏  举报