ts-node 是否应该检查 baseUrl tsconfig.json 属性?

Should ts-node examine the baseUrl tsconfig.json property?

我正在使用 ts-node,在 tsconfig.json 我有 "baseUrl": "./src"。这样我就可以在 src 中导入同级而不使用 ./。但是 ts-node 似乎没有使用 baseUrl 属性 来解析同级导入,所以我得到这样的错误:

    > tsmochanyc@1.0.0 test /home/ole/Junk/tsmochanyc
    > mocha -r ts-node/register src/**/*.spec.ts

    Error: Cannot find module 'hello'
        at Function.Module._resolveFilename (internal/modules/cjs/loader.js:548:15)

想知道这是 ts-node 错误还是我应该做些不同的事情?

如发布到 ts-node tsconfig-paths 的问题中所述,可用于此目的。我在这里有一个完整的(但最小的)工作示例。如果您想尝试一下:

git clone https://github.com/oleersoy/tsmochanyc
cd tsmochanyc
npm i
npm test

请查看 tsconfig.json 中的 baseUrlpaths 属性,了解分辨率的工作原理。在这种情况下,它们已被设置为 tsmochanyc 以这种方式代理 src/ 路径反映了如果 tsmochanyc 是外部依赖项则开发人员将使用的相同路径。