0

这是我的进口

import { test } from "test";

这些设置将正确导入,但缺少现代 TS 功能

//tsconfig.json
{
    "compilerOptions": {
        "baseUrl": ".",
        "paths": {
            "test": ["../test"]
        }
    },
}

这些设置根本不导入

//tsconfig.json
{
    "target": "ESNext",  // added a target
    "compilerOptions": {
        "baseUrl": ".",
        "paths": {
            "test": ["../test"]
        }
    },
}

如果我测试通过,看起来路径对 ES5 和 ES6 及更高版本都按预期工作,它们不起作用,也不会给出任何有意义的错误。


这是怎么回事?为什么路径在新目标中的工作方式不同?发生了什么变化,我应该怎么做?

4

1 回答 1

1

"moduleResolution": "node"必须添加路径才能在 ES6 及更高版本中工作

//tsconfig.json
{
    "target": "ESNext",  // added a target
    "compilerOptions": {
        "baseUrl": ".",
        "moduleResolution": "node"
        "paths": {
            "test": ["../test"]
        }
    },
}

如果不包含目标,则默认为 ES5。

于 2020-11-10T21:06:29.293 回答