Javascript 是否有grunt插件可以将代码包装到BackboneJS中的自动执行匿名函数中?
我有一些javascript代码需要重叠到像BackboneJS那样的自动执行匿名函数中:Javascript 是否有grunt插件可以将代码包装到BackboneJS中的自动执行匿名函数中?,javascript,backbone.js,gruntjs,Javascript,Backbone.js,Gruntjs,我有一些javascript代码需要重叠到像BackboneJS那样的自动执行匿名函数中: (function(root, factory) { // Set up Backbone appropriately for the environment. Start with AMD. if (typeof define === 'function' && define.amd) { define(['underscore', 'jquery', '
(function(root, factory) {
// Set up Backbone appropriately for the environment. Start with AMD.
if (typeof define === 'function' && define.amd) {
define(['underscore', 'jquery', 'exports'], function(_, $, exports) {
// Export global even in AMD case in case this script is loaded with
// others that may still expect a global Backbone.
root.Backbone = factory(root, exports, _, $);
});
// Next for Node.js or CommonJS. jQuery may not be needed as a module.
} else if (typeof exports !== 'undefined') {
var _ = require('underscore');
factory(root, exports, _);
// Finally, as a browser global.
} else {
root.Backbone = factory(root, {}, root._, (root.jQuery || root.Zepto || root.ender || root.$));
}
}(this, function(root, Backbone, _, $) {
答案是肯定的,
如果你想把文件分成几部分,然后在连接之后,让它像这样在函数中运行
(function(){
// file 1 content
// file 2 content
})();
您需要grunt.loadNpmTasks('grunt-contrib-concat');
并定义横幅和页脚:
concat: {
app: {
options: {
separator: ';\n',
banner: '(function(){\n',
footer: '\n})();'
},
src: [
'src/*.js'
],
dest: 'app.js'
}
},
立即调用的函数表达式只是javascript。不需要插件。不清楚“重叠”是什么意思。@Andy抱歉,我指的是“包装”:)可能是?@steveax谢谢。我马上就去试试