grunt或gulp是否有自动生成AMD,CMD或者闭包的工具?


我写了个library,由很多js文件组成,最后使用grunt进行合并压缩。
图片描述

由于最终生成的合并代码都是全局变量和函数,我需要在最终合并的代码上加上闭包和AMD,CMD的支持

图片描述

那么问题来了,grunt是不是有工具可以自当帮我加上这一坨东西呢?或者换个workaround有什么工具可以往已有文件的前后添加自定义代码的?还望告知,万分感谢!

grunt closure JavaScript 闭包 gulp

踩街狗儿副 9 years, 10 months ago

可以试一下 gulp-umd grunt-umd

xburner answered 9 years, 10 months ago

想到workaround,可以定一个一份js模板
比如closure.js


 (function(){
    <!-- content needs to be replaced -->
})();

grunt应该有插件可以做这种内容替换的吧?

补充,感谢几位的回答,我已经用grunt-include-file这个插件解决问题了。
closure_template.js
图片描述

Gruntfile.js
图片描述

洛雷斯贝尔 answered 9 years, 10 months ago

利用gulp-replace ,再利用正则表达式!


 var gulp=require("gulp");
var replace = require('gulp-replace');
gulp.task('default', function(){
  console.log("default start!");
  gulp.src(['test.js'])
    .pipe(replace(/([\s\S]*)/, '(function(){$1})();'))
    .pipe(gulp.dest('build/test.js'));
});

轻空母飞鹰号 answered 9 years, 10 months ago

Your Answer