【问题标题】:Setting tsconfig.json target breaks paths设置 tsconfig.json 目标会破坏路径
【发布时间】:2021-02-22 20:22:54
【问题描述】:

这是我的导入

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 及更高版本则无法正常工作,也不会出现任何有意义的错误。


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

【问题讨论】:

    标签: typescript tsconfig tsconfig-paths


    【解决方案1】:

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

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-28
      • 2013-08-19
      • 1970-01-01
      • 1970-01-01
      • 2016-01-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多