10

我正在使用 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 错误还是我应该做一些不同的事情?

4

1 回答 1

10

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

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

查看 thebaseUrlpathspropertistsconfig.json以了解分辨率的工作原理。在这种情况下,它们已被设置,以便以这种方式tsmochanyc代理src/路径镜像开发人员将使用的相同路径,如果tsmochanyc是外部依赖项。

于 2018-06-21T21:28:21.673 回答