【问题标题】:Grunt task automation for multiple environments适用于多种环境的 Grunt 任务自动化
【发布时间】:2017-08-10 09:51:57
【问题描述】:

这是我的 grunt 文件,它没有显示错误但无法正常工作,如果我从“string-replace”中删除 dev 和 prod 并且只有一个“string-replace”,那么它就可以工作。建议针对多个环境的任何解决方案.

//Gruntfile.js

module.exports = function(grunt) {
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),

    'string-replace': {
        dev : {
            inline: {
                files: {
                    'index.html':'index.html'
                },
                options: {
                    replacements: [
                        {
                            pattern: '<!--start PROD imports-->',
                            replacement: '<!--start PROD imports'
                        },
                        {
                            pattern: '<!--end PROD imports-->',
                            replacement: 'end PROD imports-->'
                        },
                        {
                            pattern: '<!--start DEV imports',
                            replacement: '<!--start DEV imports-->'
                        },
                        {
                            pattern: 'end DEV imports-->',
                            replacement: '<!--end DEV imports-->'
                        }
                        ]
                }
            }
        },
        prod : {
            inline: {
                files: {
                    'index.html':'index.html'
                },
                options: {
                    replacements: [
                        {
                            pattern: '<!--start PROD imports',
                            replacement: '<!--start PROD imports-->'
                        },
                        {
                            pattern: 'end PROD imports-->',
                            replacement: '<!--end PROD imports-->'
                        },
                        {
                            pattern: '<!--start DEV imports-->',
                            replacement: '<!--start DEV imports'
                        },
                        {
                            pattern: '<!--end DEV imports-->',
                            replacement: 'end DEV imports-->'
                        }
                        ]
                }
            }
        }
    }
});
    grunt.loadNpmTasks('grunt-string-replace');

    grunt.registerTask('default', ['string-replace:dev']);
    grunt.registerTask('prod', ['string-replace:prod']);
};

我需要将它用于开发和生产。

【问题讨论】:

标签: javascript angularjs node.js gruntjs grunt-string-replace


【解决方案1】:

您需要删除内联键。根据我的理解,例如在文档中使用了它。

正确的任务定义如下所示。
以下应该工作。

'string-replace': {
    dev : {
        files: {
            'index.html':'index.html'
        },
        options: {
            replacements: [
                {
                    pattern: '<!--start PROD imports-->',
                    replacement: '<!--start PROD imports'
                },
                {
                    pattern: '<!--end PROD imports-->',
                    replacement: 'end PROD imports-->'
                },
                {
                    pattern: '<!--start DEV imports',
                    replacement: '<!--start DEV imports-->'
                },
                {
                    pattern: 'end DEV imports-->',
                    replacement: '<!--end DEV imports-->'
                }
                ]
        }
    },
    prod : {
        files: {
            'index.html':'index.html'
        },
        options: {
            replacements: [
                {
                    pattern: '<!--start PROD imports',
                    replacement: '<!--start PROD imports-->'
                },
                {
                    pattern: 'end PROD imports-->',
                    replacement: '<!--end PROD imports-->'
                },
                {
                    pattern: '<!--start DEV imports-->',
                    replacement: '<!--start DEV imports'
                },
                {
                    pattern: '<!--end DEV imports-->',
                    replacement: 'end DEV imports-->'
                }
                ]
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-21
    • 1970-01-01
    • 2016-05-10
    • 2020-03-31
    • 1970-01-01
    • 1970-01-01
    • 2014-12-25
    • 2017-08-24
    相关资源
    最近更新 更多