gpt4 book ai didi

javascript - 了解基本的 grunt 文件 - uglify

转载 作者:行者123 更新时间:2023-11-29 14:44:35 24 4
gpt4 key购买 nike

我是 grunt 的新手,我只是在阅读入门指南 HERE 。它编译得很好并且不言自明,除了我很难理解 gruntFile 中的一段代码,请参见下面的 grunt 文件:

module.exports = function(grunt) {

grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
concat: {
options: {
separator: ';'
},
dist: {
src: ['src/**/*.js'],
dest: 'dist/<%= pkg.name %>.js'
}
},
uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
},
dist: {
files: {
'dist/<%= pkg.name %>.min.js': ['<%= concat.dist.dest %>']
}
}
},
qunit: {
files: ['test/**/*.html']
},
jshint: {
files: ['Gruntfile.js', 'src/**/*.js', 'test/**/*.js'],
options: {
// options here to override JSHint defaults
globals: {
jQuery: true,
console: true,
module: true,
document: true
}
}
},
watch: {
files: ['<%= jshint.files %>'],
tasks: ['jshint', 'qunit']
}
});

grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-qunit');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-concat');

grunt.registerTask('test', ['jshint', 'qunit']);

grunt.registerTask('default', ['jshint', 'qunit', 'concat', 'uglify']);

};

我不太理解下面的代码行:

 uglify: {
options: {
banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
},
dist: {
files: {
'dist/<%= pkg.name %>.min.js': ['<%= concat.dist.dest %>']
}
}
},

我是说这个line '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'只是没有意义,我相信文档确实说 grunt 使用某种模板语言,有人可以向我解释上面几行吗?

最佳答案

通常,在每个缩小的文件上方添加注释以指示包名称、构建信息和额外信息是一种很好的做法。

grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify: {
options: {
banner: '/*! <%= pkg.name %> - v<%= pkg.version %> - ' +
'<%= grunt.template.today("yyyy-mm-dd") %> */'
} ...
}
});

我相信文档确实说 grunt 使用某种模板语言?

config.get 方法(被许多任务使用)自动扩展 <% %>样式模板字符串指定为 Gruntfile 中的配置数据。

您看到的 erb 标签指的是 grunt 模板系统,grunt.template.today 是一个辅助函数,而 <%= pkg.name %>将映射到 package.json 文件中的“名称”。

关于javascript - 了解基本的 grunt 文件 - uglify,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34352237/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com