源图与咕噜声

时间:2013-11-01 02:11:30

标签: workflow gruntjs source-maps uglifyjs2 grunt-usemin

您是否了解包含使用grunt编译的应用的源地图的工作流程?

我很清楚像uglifyjs这样的插件,可以让您简单地生成源地图。但我正在寻求将其纳入更复杂的工作流程,而不仅仅是制作一次性的源地图。

我注意到最受欢迎的Yeoman发电机(我知道)在工作流程中缺少源地图。这只是因为源地图的主要插件缺乏支持吗?或者是工作流程中不需要源地图,我只是想不出足够聪明的替代方案?

我遇到过流行的grunt插件的明显问题包括:

uglify unable to handle even the most basic of project structures没有hacky fix

除了最简单的配置之外,

usemin也是unable to handle source maps,因为它实际上只能支持每个项目一个(但仍需要黑客来纠正它)。一个可能的解决方案显然是完全停止使用usemin,但是你会失去它的所有好处,比如将它与revwatchconnect配对

我认为,当我测试我的应用时,我最好的行动方案可能是使用未连接/未缩小的来源进行测试。当然,这不太理想,因为我希望我的测试环境尽可能地反映生产环境。

您在grunt项目中使用源地图吗?你怎么做呢?如果没有,你如何解决他们缺乏支持的问题?

1 个答案:

答案 0 :(得分:7)

更新02/17/14

Z Goddard我正在努力修复grunt-contrib套件中的源映射。可以阅读有关整个套件的计划选项in this repo。我们还在开发一个新的库sourcemap-util,它将提供辅助函数来生成任何库的源映射。当有更多进展时,我会更新。


我做了足够多的研究,现在能够回答我自己的问题。

没有,现在没有任何好方法可以使用grunt来处理源地图。

usemingrunt-contrib-uglify都需要根据我的意愿进行更新。我向grunt-contrib-uglify提交了a pull request,这是更好的源地图支持的良好开端。幸运的是,这种拉动将被合并。

对于usemin,我不同意其处理依赖关系的方法。我已经开始了一个单独的项目grunt-resourceful,这与事情有所不同。该项目仍处于起步阶段,因此我建议不要立即使用它。我会在1.0.0发布后更新。