4

目标

我的目标是连接我所有的 css、js 文件并缩小它们。我可以缩小我的concat.js,但我正在努力缩小我的concat.css.


Gruntfile.js

module.exports = function(grunt) {
    "use strict";

    grunt.initConfig({

        concat: {

            js: {
                src: [

                    'js/bootstrap.min.js',
                    'js/jquery-1.10.2.min.js',

                    'js/jquery.easypiechart.min.js',
                    'js/jquery.isotope.min.js',
                    'js/jquery.magnific-popup.min.js',
                    'js/waypoints.min.js',
                    'js/respond.min.js',
                    'js/jquery.vegas.min.js',
                    'js/modernizr-2.6.2.min.js',
                    'js/jquery.nav.js',
                    'js/html5shiv.js',
                    'js/jquery.scrollTo.js',
                    'js/jquery.sticky.js',
                    'js/jquery.validate.js',
                    'js/main.js',

                ],
                dest: 'dist/concat.js'
            },

            css: {
                src: [


                    'css/magnific-popup.css',
                    'css/main.css',
                    'css/xl.css',
                    'css/lg.css',
                    'css/md.css',
                    'css/sm.css',
                    'css/xs.css',
                    'css/print.css',
                    'css/bootstrap.min.css',
                    'css/font-awesome.min.css',

                ],
                dest: 'dist/concat.css'
            }
        },

        watch: {

            js: {

                files: ['js/*.js'],
                task: ['concat:js']
            },

            css: {
                files: ['css/*.css'],
                task: ['concat:css']
            }
        },

        uglify: {

            js: {
                files: {
                    'dist/minified.js': ['dist/concat.js']
                }
            },

            css: {
                files: {
                    'dist/minified.css': ['dist/concat.css']
                }
            }
        }

    });

    grunt.loadNpmTasks('grunt-contrib-concat');
    grunt.loadNpmTasks('grunt-contrib-uglify');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.registerTask('default', ['concat', 'uglify']);

};

结果

我成功地连接了我所有的 css 和 js 文件,它们是在以下位置生成的:

  • dist/concat.js
  • dist/concat.css

然后,我也可以concat.js毫无问题地缩小我的,但我正在努力缩小我的concat.css.

我一直在终端底部收到此错误:

Running "uglify:css" (uglify) task
{ message: 'Unexpected token: punc (.)',
  filename: 'concat.css',
  line: 4,

而 line4 只是我课程的开始:.mfp-bg {

有人可以在这里给我一点推动吗?另外,我应该在连接后执行缩小还是相反?有一个更好的方法吗 ?

4

1 回答 1

7

uglify仅用于最小化 JavaScript,而不是 CSS。

如果你想最小化 CSS,你可以为 Grunt 使用cssmin任务。

于 2015-05-11T16:48:03.910 回答