node.js - Haxe/Nodejs 调试 - 源映射

标签 node.js haxe

如何在nodejs上启用源映射?我希望将堆栈跟踪映射到 .hx 文件而不是生成的 .js 文件。

Main.hx:

package;

class Main
{
    public static function main()
        throw "test";
}

build.hxml:

-lib hxnodejs
-cp src
-js bin/index.js
-main Main

输出:(cd bin && node index.js)

/Users/kevin/Codes/testnodejs/bin/index.js:10
    throw new js__$Boot_HaxeError("test");
    ^
Error: test
    at Function.Main.main (/Users/kevin/Codes/testnodejs/bin/index.js:10:8)
    at console.undefined.log (/Users/kevin/Codes/testnodejs/bin/index.js:21:6)
    at Object. (/Users/kevin/Codes/testnodejs/bin/index.js:22:3)
    at Module._compile (module.js:434:26)
    at Object.Module._extensions..js (module.js:452:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Function.Module.runMain (module.js:475:10)
    at startup (node.js:117:18)
    at node.js:951:3

最佳答案

  1. 从 npm 安装“source-map-support”

    npm install source-map-support
    
  2. 在 hxml 中启用 -debug(以便 Haxe 生成源映射文件)

  3. 在程序的最开始运行install():

    js.Lib.require('source-map-support').install();
    
  4. 将wrapCallSite函数分配给haxe.CallStack

    haxe.CallStack.wrapCallSite = js.Lib.require('source-map-support').wrapCallSite;
    

关于node.js - Haxe/Nodejs 调试 - 源映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33778714/

相关文章:

node.js - Bluebird promise 解决快速路线

node.js - Bluemix Node.js 应用程序未显示新代码

javascript - 如何使用 node-soap 创建自定义请求

javascript - 如何使用haxe创建可重用的js库?

node.js - 将事件绑定(bind)到所有 socket.io 连接

javascript - Javascript (Node.js) 中的简单命令行提示符

flash - Haxe闪存硬件优化

javascript - 为什么源 map 不起作用?

android - Haxe:如何让 android 菜单栏保持隐藏状态

FlashDevelop、Haxe 导入 CreateJS?