gpt4 book ai didi

javascript - grunt-contrib-concat:指定要连接的最后一个文件?

转载 作者:行者123 更新时间:2023-12-03 09:41:37 26 4
gpt4 key购买 nike

我使用 grunt-contrib-concat 将所有自定义 JS 文件连接在一起,并用 IIFE 包装它们。我遇到了一些加载顺序问题(即,我的初始化文件在某些​​模块之前执行,导致未定义的错误)。我想指定 init.js 应该是连接顺序中的最后一个,但我不想也指定所有其他 JS 文件的顺序,只是这个特定的文件位于最后。

这是我的 concat 的当前配置:

/**
* Set project info
*/
project: {
src: 'src',
app: 'app',
assets: '<%= project.app %>/assets',
css: [
'<%= project.src %>/scss/style.scss'
],
js: [
'<%= project.src %>/js/*.js'
]
},

concat: {
dev: {
files: {
'<%= project.assets %>/js/scripts.min.js': '<%= project.js %>'
}
},
options: {
stripBanners: true,
nonull: true,
banner: ';(function($, window, document, undefined){ \n "use strict";',
footer: '}(jQuery, window, document));'
}
},

如何指定要连接的最后一个文件而不向我的项目添加额外的 grunt 模块

最佳答案

您可以通过使用数组连接所有文件 but init.js,然后将结果与 init.js 连接起来维持顺序的语法:

concat: {
dev1: {
dest: '<tmp>/concat1.js',
src: ['<all your js>', '!init.js']
},
devFinal: {
options: {
stripBanners: true,
nonull: true,
banner: ';(function($, window, document, undefined){ \n "use strict";',
footer: '}(jQuery, window, document));'
},
files: {
dest: 'scripts.min.js',
src: ['<tmp>/concat1.js', 'init.js']
},
},
}

然后连续调用两个目标:

grunt.registerTask('myConcat', ['concat:dev1', 'concat:devFinal']);

关于javascript - grunt-contrib-concat:指定要连接的最后一个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31166695/

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