Node.js GrunFile.js到NPM脚本

Node.js GrunFile.js到NPM脚本,node.js,gruntjs,npm,Node.js,Gruntjs,Npm,随着NPM作为构建工具越来越流行,它可以取代咕噜和咕噜。(从一开始它就可以做到)我想跟着它走 但是我能找到的关于这个话题的稀有信息对我来说仍然有点困惑 当我通过示例更好地了解时,我的问题是: 有人能给我提供这个Gruntfile.js的替代品吗 我认为这对人们将来会有很大帮助。 如果需要更改,还可以使用package.json。 加上终端命令,因为我认为它需要更多或其他东西,而不仅仅是grunt watch grunfile.js module.exports = function(grunt)

随着NPM作为构建工具越来越流行,它可以取代咕噜和咕噜。(从一开始它就可以做到)我想跟着它走

但是我能找到的关于这个话题的稀有信息对我来说仍然有点困惑

当我通过示例更好地了解时,我的问题是:

有人能给我提供这个Gruntfile.js的替代品吗

我认为这对人们将来会有很大帮助。 如果需要更改,还可以使用package.json。 加上终端命令,因为我认为它需要更多或其他东西,而不仅仅是
grunt watch

grunfile.js

module.exports = function(grunt){
require("matchdep").filterDev("grunt-*").forEach(grunt.loadNpmTasks);
grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    sass: {
        dist: {
            options: {
                style: 'compressed'
            },
            files: {
                'build/css/style.css' : 'src/scss/combined.scss'
            }
        }
    },
    imagemin: {
        dynamic: {
            options: {
                optimizationLevel: 3
            },
            files: [{
                expand: true,// Enable dynamic expansion
                cwd: 'assets/img/',
                src: ['**/*.{png,jpg,gif}'],
                dest: 'build/img/'
            }]
        }
    },
    concat: {
        vendorJs: {
            src: ['src/js/vendor/*.js'],
            dest: 'src/js/vendor.js'
        }
    },
    uglify: {
        js: {
            files: {
                'build/js/main.min.js': ['src/js/main.js']
            }
        },
        vendorJs: {
            files: {
                'build/js/vendor.min.js': ['src/js/vendor.js']
            }
        }
    },
    cssmin: {
        minify: {
            expand: true,
            cwd: 'src/scss/',
            src: ['*.css', '!*.min.css'],
            dest: 'build/css/',
            ext: '.min.css'
        }
    },
    jshint: {
        beforeconcat: ['src/js/main.js'],
        afterconcat: ['build/js/main.min.js']
    },
    watch: {
        css: {
            files: '**/*.scss',
            tasks: ['sass','cssmin']
        },
        js : {
            files : 'src/js/**/*.js',
            tasks : ['concat','uglify']
        },
        images: {
            files: ['assets/img/**/*.{png,jpg,gif}'],
            tasks: ['imagemin'],
            options: {
                spawn: false
            }
        }
    }
});

grunt.registerTask('default', []);

};
package.json

{
    "name": "project_name",
    "version": "1.0.0",
    "author": "your name",
    "private": true,
    "devDependencies": {
        "grunt": "^0.4.5",
        "grunt-contrib-concat": "^0.5.0",
        "grunt-contrib-cssmin": "^0.10.0",
        "grunt-contrib-jshint": "^0.10.0",
        "grunt-contrib-sass": "^0.7.4",
        "grunt-contrib-uglify": "^0.5.1",
        "grunt-contrib-watch": "^0.6.1",
        "matchdep": "*"
    }
}

执行每个grunt任务,查看每个应用程序的文档,了解命令行的用法。然后将其添加到package.json。你做过什么吗?好的-这不是很有帮助,因为我不知道如何初始化脚本和所有“一起玩”的任务手表等。我的意思是,我可以通过文件,收集自己的所有知识。但我喜欢stackoverflow,因为人们分享他们的知识。挑一个,看看你能走多远。如果你被卡住了,发布一个关于这个的问题。这个问题的答案是“为我做我所有的工作”。有人可能会帮忙,但我对此表示怀疑。谷歌
使用npm而不是grunt
-前三名结果-是的,很聪明的一个。。当然是我自己用谷歌搜索的。正如我在问题中所说,我发现的一切仍然有点混乱。是的,我知道这样做会有很多好处。但也许有人已经这么做了,想分享这项工作。这就是为什么我写了“例如”这个Gruntfile。这篇文章只是不清楚如何迁移和填充。也许只有我一个人。