gpt4 book ai didi

javascript - 如何引用 Grunt 文件中的某个部分以避免冗余?

转载 作者:行者123 更新时间:2023-11-30 12:19:32 25 4
gpt4 key购买 nike

这看起来像是 gruntgrunt-contrib-copy 特定问题,但它实际上适用于更通用的范围。

冗余配置

我有以下 Gruntfile.js:

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

copy: {
examples: {
cli: {
files: [
{ src: ['src/client.js'], dest: 'examples/client.js' }
]
},
srv: {
files: [
{ src: ['src/server.js'], dest: 'examples/server.js' }
]
},
all: { /* ATTENTION: Redundant part! */
files: [
{ src: ['src/client.js'], dest: 'examples/client.js' },
{ src: ['src/server.js'], dest: 'examples/server.js' }
]
}
},
},
});

grunt.loadNpmTasks('grunt-contrib-copy');

grunt.registerTask('default', [...]);
grunt.registerTask('build-examples', ['copy:examples']);
};

但这是多余的!

试图避免冗余

我想做这样的事情:

all: {
files: examples.cli.files.concat(examples.srv.files)
}

但这是不可能的。

此处的最佳做法是什么?谢谢

最佳答案

请记住这是 JavaScript 代码,因此您可以在 JavaScript 代码中执行任何操作:

module.exports = function(grunt) {
// Project configuration.
var clientFiles = [
{ src: ['src/client.js'], dest: 'examples/client.js' }
];
var serverFiles = [
{ src: ['src/server.js'], dest: 'examples/server.js' }
];
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),

copy: {
examples: {
cli: {
files: clientFiles
},
srv: {
files: serverFiles
},
all: {
files: clientFiles.concat(serverFiles)
}
},
},
});

grunt.loadNpmTasks('grunt-contrib-copy');

grunt.registerTask('default', [...]);
grunt.registerTask('build-examples', ['copy:examples']);
};

关于javascript - 如何引用 Grunt 文件中的某个部分以避免冗余?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31500699/

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