grunt压缩多个js文件和css文件

压缩前的工程目录:

1、安装js,css需要的插件

使用npm安装:npm install grunt-contrib-uglify --save-dev  -------->安装js压缩插件

npm install grunt-contrib-cssmin --save-dev  -------->安装css压缩插件

手动安装后,在package.json文件里,会自动将“grunt-contrib-uglify”加入,并且是当前grunt-contrib-uglify的最新版本,就如下面的package.json文件中红色部分,

“grunt-contrib-cssmin”与上同理。

或者在package.json中加入配置:

{
  "name": "DailyBook",
  "version": "0.0.0",
  "private": true,
  "scripts": {
    "start": "node ./bin/www"
  },
  "dependencies": {
    "body-parser": "~1.13.1",
    "cookie-parser": "~1.3.5",
    "debug": "~2.2.0",
    "ejs": "~2.3.2",
    "express": "~4.13.0",
    "morgan": "~1.6.1",
    "serve-favicon": "~2.3.0"
  },
  "devDependencies": {
    "grunt": "^0.4.5",
    "grunt-contrib-cssmin": "^0.12.3",
    "grunt-contrib-uglify": "^0.9.1"
  },
  "main": "app.js",
  "author": "",
  "license": "ISC"
}

然后npm install。

2、创建gruntfile.js文件,配置grunt:

 1 module.exports = function (grunt) {
 2     // 项目配置
 3     grunt.initConfig({
 4         //读取package.json文件,形成json数据;
 5         pkg: grunt.file.readJSON(‘package.json‘),
 6         //压缩js;
 7         uglify: {
 8             //压缩后的文件中头部的输出信息,options可有可无;
 9             options: {
10                 banner: ‘/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n‘
11             },
12             //当只有一个文件需要压缩时,可按下列方式书写代码
13 //            build: {
14 //                src: ‘src/<%=pkg.file %>.js‘,
15 //                dest: ‘dest/<%= pkg.file %>.min.js‘
16 //            }
17             my_target:{
18                 files:[
19                     {
20                         expand:true,//表示使用相对路径
21                         cwd:"src/",//相对路径的根目录
22                         src:"*.js",//相对路径下需要压缩的文件,*表示所有该后缀类型的文件,写具体的就是某个具体的文件将会被压缩
23                         dest:"dest/js"//压缩后的文件需要放置的目录,如果不存在的话,会自动创建
24                     }
25                 ]
26             }
27 /************如果是几个特定的文件需要压缩,写法如下*********/
28 /*
29  my_target:{
30                 files:[
31                     {
32                         expand:true,//相对路径
33                         cwd:"src/",
34                         src:‘test.js‘,
35                         dest:"dest/js"
36                     },
37                     {
38                         expand:true,//相对路径
39                         cwd:"src/",
40                         src:‘zepto.js‘,
41                         dest:"dest/js"
42                     }
43                 ]
44             }
45
46 */
47         },
48         //压缩css
49         cssmin:{
50             options:{
51                 //压缩后css文件的头部信息,options可有可无
52                 banner: ‘/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n‘,
53                 ascii_only:true//中文ascii美化,防止中文乱码
54             },
55             my_target:{
56                 files:[
57                     {
58                         expand:true,//表示使用相对路径
59                         cwd:"src/",//相对路径的根目录
60                         src:"*.css",//相对路径下需要压缩的文件,*表示所有该后缀类型的文件,写具体的就是某个具体的文件将会被压缩
61                         dest:"dest/css"//压缩后的文件需要放置的目录,如果不存在的话,会自动创建
62                     }
63                 ]
64             }
65
66         }
67     });
68     // 加载指定的插件
69     grunt.loadNpmTasks(‘grunt-contrib-uglify‘);// 压缩js文件;
70     grunt.loadNpmTasks(‘grunt-contrib-cssmin‘);//压缩css文件;
71
72
73     // 默认要执行的任务
74     grunt.registerTask(‘default‘, [‘uglify‘,‘cssmin‘]);
77 }

3、输入命令 grunt 运行。结果将文件自动压缩并生成相应的文件目录:

压缩后的工程目录:

时间: 2024-10-18 22:22:52

grunt压缩多个js文件和css文件的相关文章

js 动态修改css文件

_.find(document.styleSheets[4].cssRules,function(cssRule){ if(cssRule.selectorText && cssRule.selectorText.indexOf(".navbar-fixed-top2")>-1){ cssRule.style.position=""; cssRule.style.top = "0px"; } if(cssRule.selec

关于controller返回的页面js文件和css文件404问题的正式解决

谨用此博客记录一下这条卡了两个星期的bug-- 还是之前的问题,通过get方法,后台@Controller返回页面然后弹窗.但是不知道为什么一直所有js文件和css文件都报404-- (之前的博客记录:http://www.cnblogs.com/wangshen31/p/8655044.html) 然后把get方法改成了post方法就解决了!!!然后就先没管.写到了后面,弹窗多了,发现最后在submit操作的时候,发现不知道为什么layui.form的监听submit总是监听到两次submit

grunt 压缩多个js,css文件

付测试例子链接:http://pan.baidu.com/s/1jGk2TEm 步骤:首先需要再与Gruntfile.js同一层创建文件夹dist,然后执行$npm install ,最后执行grunt. 看了两天的grunt各种资料,终于在今天打包成功了,我看了网上的很多资料,在打包的时候都出现很多问题,原因是我的js与css路径问题,现在做一个简单的测试例子. 首先目录结构 package.json { "name": "pro", "version&

折腾一两天,终于学会使用grunt压缩合并混淆JS脚本,小激动,特意记录一下+spm一点意外收获

很长时间没有更新博客了,实在是太忙啦...0.0 ,以下的东西纯粹是记录,不是我原创,放到收藏夹还担心不够,这个以后常用,想来想去,还是放到这里吧,,丢不了..最后一句废话,网上搜集也好原创也罢,能解决问题不糊弄人才是真道理! 反正我的问题解决啦!!!哈哈哈!! 安装grunt 原文:www.bluesdream.com/blog/Windows-installs-the-grunt-and-instructions.html 怕这个网址打不开,记录下: 安装Grunt:如果你之前安装过老的0.

less文件转换为css文件

Less 是一门 CSS 预处理语言,它扩充了 CSS 语言,增加了诸如变量.混合(mixin).函数等功能,让 CSS 更易维护.方便制作主题.扩充. 本文主要介绍less文件如何转化为css文件. 1.首先,你要确认你的电脑已经安装了node. 使用 npm 安装 lessc,命令行:npm install -g less 2.然后,进入需要转换的less文件的目标位置. 3.最后,你只需输入以下两条命令: npm install -g less lessc less文件名.less 生成的

后台如何动态添加JS文件和css文件的引用

www.qdmm.com/BookReader/24290,68379406.aspxwww.qdmm.com/BookReader/24290,68379409.aspxwww.qdmm.com/BookReader/24290,68379413.aspxwww.qdmm.com/BookReader/24290,68379416.aspxwww.qdmm.com/BookReader/24290,68379418.aspxwww.qdmm.com/BookReader/24290,68379

用Grunt进行CSS文件压缩

假设你的项目的CSS文件全部放在项目目录下名为css的文件夹中,现在将它压缩合并成一个名为main-min.css的文件,放在css-min文件夹下. (1)首先保证机器安装了node.js. (2)在项目的目录下建立名为package.json的文件,用于配置需要安装的npm包,package.json的内容如下: { "author": "evan <[email protected]>", "name": "CSS_Z

【翻译】Microsoft Ajax Minifier 快速使用指南(与VS集成使用) 编译后直接压缩项目的JS或CSS文件

网上找了好久终于找到一个能跟VS集成使用的JS和CSS压缩工具,因为害怕忘记,所以给转发过来,顺便翻译一下,大学那会儿学的英语基本上都已经还给老师了,所以翻译的不太好,不过能看懂就成,对吧? 原文地址:http://www.asp.net/ajaxlibrary/AjaxMinQuickStart.ashx 一.在命令行中使用 在下载安装完成Microsoft Ajax Minifier之后,你就可以以命令的方式使用它了.单击“开始”——“所有程序”——“Microsoft Ajax Minif

开源作品-PHP写的JS和CSS文件压缩利器-SuMinify_PHP_1_5

前言: 网站项目需要引用外部文件以减小加载流量,而且第一次加载外部资源文件后,其他同域名的页面如果引用相同的地址,可以利用浏览器缓存直接读取本地缓存资源文件,而不需要每个页面都下载相同的外部资源文件.外部资源文件有一些是第三方插件,有一些是自己写的业务功能脚本,项目引用这些外部文件,需要把没有压缩过的第三方插件压缩后再引用,而自己的业务功能脚本,有的做成插件形式,引用一个功能脚本,需要同时引用若干个脚本文件,因此需要把这些脚本文件合并成一个压缩文件再引用,这样可以减少HTTP请求次数,减少这些外