您是否知道包含使用 grunt 编译的应用程序的源映射的工作流程?
我很清楚像 uglifyjs
这样的插件允许您简单地生成源映射。但我正在寻找将其整合到更复杂的工作流程中,而不仅仅是制作一次性源 map 。
我注意到最流行的 Yeoman 生成器(据我所知)在其工作流程中缺少源映射。这仅仅是因为缺乏对源映射的主要插件的支持吗?或者是不是在工作流程中不需要源映射,而我只是想不出一个足够聪明的替代方案?
我遇到的流行 grunt 插件的显着问题来源包括:uglify
正在 unable to handle even the most basic of project structures没有 hacky fix .usemin
也被unable to handle source maps除了最简单的配置之外,它实际上只能支持每个项目一个(但仍然需要黑客来纠正它)。一个可能的解决方案显然是停止使用 usemin
完全一样,但是你会失去它的所有好处,比如将它与 rev
配对。 , watch
, 和 connect
.
我认为我最好的做法可能是在测试我的应用程序时使用未连接/未缩小的源进行测试。当然,这并不理想,因为我希望我的测试环境尽可能地反射(reflect)生产环境。
你在你的 grunt 项目中使用 source map 吗?你怎么做呢?如果没有,你如何解决他们缺乏支持的问题?
最佳答案
更新 02/17/14
Z Goddard我正在修复整个 grunt-contrib 套件中的源映射。整个套件的计划选项可以阅读关于in this repo .我们也在开发一个新的库,sourcemap-util
,这将提供用于使用任何库生成源映射的辅助函数。当有更多进展时,我会更新这个。
我已经做了足够的研究,现在能够回答我自己的问题。
否 ,现在用 grunt 处理源映射真的没有什么好方法。
两者 usemin
和 grunt-contrib-uglify
需要更新才能按照我的意愿工作。我提交了 a pull request至 grunt-contrib-uglify
这是更好的源映射支持的良好开端。幸运的话,这个拉动将被合并。
至于usemin
,我不同意它处理依赖项的方法。我已经开始了一个单独的项目, grunt-resourceful
,事情就不一样了。该项目仍处于起步阶段,因此我不建议现在使用它。我会更新一次 1.0.0
被释放。
关于workflow - 带有咕噜声的源映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19719780/