代码之家  ›  专栏  ›  技术社区  ›  A. L

节点-如何使用源地图与纽约市和摩卡

  •  8
  • A. L  · 技术社区  · 6 年前

    所以纽约市把我的文件弄乱了如下:

      at _onCreate (src/post/admin.js:1:10453)
      at doQuery (src/db.js:59:216)
      at process._tickCallback (internal/process/next_tick.js:68:7)
    

    我不确定如何使用源映射来解开这个。文档状态:

    当produce source map设置为true时,插入指令的源文件将包含插入指令转换的内联源映射。当与源代码映射支持相结合时,插入指令的代码的堆栈跟踪将反映它们的原始行。

    所以我尝试了以下npm run命令:

    "NODE_ENV=test nyc mocha --require ./tests/setup.js --require source-map-support/register --produce-source-map true --bail ./tests/unit/$FILE"
    

    结合纽约的环境:

    "nyc": {
        "include": [
            "src"
        ],
        "exclude": [
            "./tmp/**/*",
            "./tests"
        ],
        "instrument": true,
        "report-dir": "./tests/coverage",
        "temp-dir": "./tests/temp",
        "source-map": true,
        "produce-source-map": true
    }
    

    但这条线还是断了。

    1 回复  |  直到 6 年前
        1
  •  12
  •   Martin Zeitler    6 年前

    它工作的基本先决条件是(如上所述 here ):

    npm install --save-dev source-map-support
    

    确保 nyc ^10.3.2 ( 10.3.0

    "devDependencies": {
        ...
        "mocha": "^3.3.0",
        "nyc": "^10.3.2",
        "source-map-support": "^0.4.15",
    }
    

    这个 配置应该是 "sourceMap": true, "produce-source-map": true .

    以及 documentation 说明如何使用它们:

    CLI使用

    node -r source-map-support/register compiled.js
    

    程序化使用

    在编译文件的顶部放置以下行。

    require('source-map-support').install();
    

    //# sourceMappingURL=filename.js.map
    
    推荐文章