2013-07-04 65 views
2

源地圖使得在瀏覽器中調試CoffeeScript代碼變得非常簡單。現在離不開它!CoffeeScript/JavaScript - 使承諾與源地圖兼容?

我使用Q作爲承諾,不幸的是Q在promise中引發錯誤時返回原始跟蹤堆棧。

Q.when $.ajax(...) 
.then()-> 
    ... 
.fail (error)-> 
    console.log error.stack 

有沒有辦法來改造默認堆棧跟蹤在它的「源映射」櫃檯的一部分?

謝謝! :)

回答

1

源地圖並非真的非常適合這種情況,但使用V8 JavaScript引擎(在Google Chrome和node.js中使用)可以使用JavaScript API對堆棧跟蹤進行變更。

如果啓用長堆棧跟蹤,Q會執行此操作。你不應該在生產中使用它,因爲它具有巨大的性能:https://github.com/kriskowal/q#long-stack-traces

+0

是的我已經研究過,很遺憾沒有辦法讓源地圖在這種情況下工作。 – RadiantHex

+0

問題是,在這種情況下,源地圖意味着什麼? soure地圖不影響代碼流,只是它的位置。我可以看到更多與發電機組一起完成的事情,但是它不會是源地圖。 – ForbesLindesay