7

您是否知道包含使用 grunt 编译的应用程序的源映射的工作流?

我很清楚这样的插件uglifyjs可以让你简单地生成一个源映射。但我正在寻找将其整合到更复杂的工作流程中,而不仅仅是制作一次性的源地图。

我注意到最流行的 Yeoman 生成器(据我所知)在其工作流程中缺少源映射。这仅仅是因为源地图的主要插件缺乏支持吗?或者是不是工作流程中不需要源映射,我只是想不出一个足够聪明的替代方案?

我遇到的流行的 grunt 插件的显着问题来源包括:

uglify如果没有hacky 修复,甚至无法处理最基本的项目结构

usemin除了最简单的配置之外,也无法处理源映射,因为它实际上只能支持每个项目一个(但仍然需要 hack 来纠正它)。一个可能的解决方案显然是usemin完全停止使用,但是你会失去它的所有好处,比如将它与revwatchconnect.

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

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

4

1 回答 1

7

2014 年 2 月 17 日更新

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


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

,现在用 grunt 处理源映射并没有什么好的方法。

两者都usemin需要grunt-contrib-uglify更新才能按我的意愿工作。我提交了一个拉取请求grunt-contrib-uglify这是更好的源地图支持的良好开端。运气好的话,这个 pull 会被合并。

至于usemin,我不同意它处理依赖关系的方法。我已经开始了一个单独的项目,grunt-resourceful它以不同的方式处理事情。该项目仍处于起步阶段,因此我不建议现在使用它。1.0.0一旦发布,我会更新这个。

于 2013-12-13T19:11:39.980 回答