Gruntfile添加javascript文件

时间:2015-09-16 15:42:35

标签: javascript compass-sass livereload bootstrap-sass gruntfile

我使用以下yeoman生成器创建了一个bootstrap-compass项目:

https://www.npmjs.com/package/generator-bootstrap-compass

您可以在链接中看到文件结构。

如何正确地将javascripts添加到此gruntfile?

gruntfile.js看起来像这样:

module.exports = function(grunt) {

    // Project configuration.
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

        config: {
            app: 'app'
        },

        connect: {
            options: {
                port: 9000,
                livereload: 35729,
                // Change this to '0.0.0.0' to access the server from outside
                hostname: 'localhost'
            },
            livereload: {
                options: {
                    open: true,
                    base: [
                        '.tmp',
                        '<%= config.app %>/public'
                    ]
                }
            },
        },
        watch: {
            options: {
                livereload: true,
            },
            livereload: {
                options: {
                    livereload: '<%= connect.options.livereload %>'
                },
                files: [
                    '<%= config.app %>/public/{,*/}*.html',
                    '<%= config.app %>/public/css/{,*/}*.css',
                    '<%= config.app %>/public/images/{,*/}*'
                ]
            },
            compass: {
                files: ['**/*.{scss,sass}'],
                tasks: ['compass:dev']
            },
        },
        compass: {
            dev: {
                options: {
                    sassDir: ['app/src/stylesheets'],
                    cssDir: ['app/public/css'],
                    environment: 'development'
                }
            },
            prod: {
                options: {
                    sassDir: ['app/src/stylesheets'],
                    cssDir: ['app/public/css'],
                    environment: 'production'
                }
            },
        }
    });

    // Load the plugin
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.loadNpmTasks('grunt-contrib-compass');
    grunt.loadNpmTasks('grunt-contrib-connect');

    // Default task(s).
    grunt.registerTask('default', ['connect:livereload', 'compass:dev', 'watch']);
    // prod build
    grunt.registerTask('prod', ['compass:prod']);

};

修改

解决方案:

我刚刚将grunt-contrib-uglify和以下代码添加到我的gruntfile.js中以压缩我项目中的任何js代码:

uglify: {
            all: {
                files: {
                  '<%= config.app %>/public/js/bootstrap.min.js': ['<%= config.app %>/src/javascripts/bootstrap.js']
                }
            },
        }

1 个答案:

答案 0 :(得分:0)

有一个非常简短有趣的视频,解释了Grunt的工作原理https://www.youtube.com/watch?v=TMKj0BxzVgw。 但如果您现在无法观看,请阅读此http://gruntjs.com/creating-tasks

我希望我有所帮助。