我正在创建一个grunt任务,用于使用grunt-contrib-requirejs构建一个带有requirejs的javascript项目。
https://github.com/gruntjs/grunt-contrib-requirejs
下面是配置:
requirejs:
compile:
options:
#appDir: './'
baseUrl: "client"
mainConfigFile: "client/main.js"
name: "main"
out: "build/main.js"
wrap:
start: ""
end: ""main.js文件需要子目录中的另外两个文件。通过此任务不会引发错误,生成的生成文件也不会运行浏览器。这些文件似乎是连接的,因为构建的文件中仍然存在需求调用。我希望require调用的js文件可以替换require调用,然后进行优化。我怎样才能做到这一点?
PS:上面的配置是用coffeescript编写的。
发布于 2014-05-29 19:30:55
如果希望编译的javascript文件不包含require()或define()调用,可以使用AMDclean npm包并简单地将其添加到options对象中:
onModuleBundleComplete: function (data) {
var fs = require('fs'),
amdclean = require('amdclean'),
outputFile = data.path;
fs.writeFileSync(outputFile, amdclean.clean({
'filePath': outputFile
}));
}https://stackoverflow.com/questions/23939040
复制相似问题