schangxiang@126.com
2025-09-17 c9c91ad3e3ac218d81c86809c93a35622b51a686
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
/*global module:false*/
module.exports = function(grunt){
 
    
    // Project configuration.
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        bower: grunt.file.readJSON('bower.json'),
        copy: {
            demo: {
                files: [
                    {expand: true, src: ['src/*'], dest: 'dist/', filter: 'isFile', flatten: true}
                ]
            }
        },
 
        uglify: {
            options: {
                beautify: {
                    ascii_only : true
                },
                preserveComments: 'some'
            },
            html5shiv: {
                files: [{
                    expand: true,     // Enable dynamic expansion.
                    cwd: 'src/',      // Src matches are relative to this path.
                    src: ['**/*.js'], // Actual pattern(s) to match.
                    dest: 'dist/',   // Destination path prefix.
                    ext: '.min.js'
                }]
            }
        },
        watch: {
            js: {
                files: ['src/**/*.js'],
                tasks: ['copy', 'uglify', 'bytesize']
            }
        },
        bytesize: {
            all: {
                src: [
                    'dist/**.min.js'
                ]
            }
        }
    });
 
    
    // Default task.
 
    
 
    grunt.loadNpmTasks('grunt-contrib-copy');
    grunt.loadNpmTasks('grunt-contrib-uglify');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-bytesize');
 
    grunt.registerTask('default', ['copy', 'uglify', 'bytesize', 'watch']);
 
};