[英]How to minify a JSON text file with grunt?
我需要使用Grunt / grunt-contrib-uglify缩小一组JSON文件(语言文件):
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
build: {
src: 'src/main/app/resources/locales/*/*.json',
dest: 'target/resources/locales/*/*.json'
}
}
});
我得到的是:
Files: src/main/app/resources/locales/en/messages.json -> target/*/*.json
Minifying with UglifyJS...Reading src/main/app/resources/locales/en/messages.json...OK
>> Uglifying source "src/main/app/resources/locales/en/messages.json" failed.
Warning: Uglification failed. Use --force to continue.
我开始怀疑,uglify是否可用于纯JSON文件,还是仅用于JavaScript源文件? JSON文件确实很好,它以非最小化的形式在应用程序中运行。
grunt-json-minify
minify(如user2806181的答案所示)工作正常(顺便说一下,谢谢),但它只修改了文件。 受到答案的启发,我发现了一个更高级的: grunt-minjson :
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
minjson: {
build: {
files: {
'target/locales/en/messages.json':
'resource/locales/en/messages.json'
}
}
}
});
我猜UglifyJS不适用于纯JSON,因为它不是有效的javascript。
看一下这个链接: https : //github.com/mishoo/UglifyJS2/issues/156
但是你可以使用几个grunt-plugins,例如: https : //npmjs.org/package/grunt-json-minify
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.