【问题标题】:Typescript Establishing Absolute Imports Node打字稿建立绝对导入节点
【发布时间】:2022-08-18 12:30:35
【问题描述】:

我使用 TS 在节点中构建了一个项目,我正在尝试实现导入的绝对路径。

但是,当我运行该项目时,它开始失败。

[1] Error: Cannot find module \'src/common/logger\'
[1] Require stack:
[1] - C:\\...xyz\\Workspaces\\PROJECT\\dist\\index.js

当我将\'src/common/logger\' 切换到\'./common/logger\' 时,它会继续指向其他绝对路径导入的路径。

我认为我的 TS 配置显然有问题,但我似乎看不到我在哪里搞砸了。

最终我希望导入成为\'common/xyz\' 和\'db/xyz\'

我的项目目录遵循以下流程:

├───tsconfig.json
├───node_modules
├───dist // output location
└───src
     |───common
     |───db
     └───index.ts
{
  \"compilerOptions\": {

    /* Language and Environment */
    \"target\": \"es2021\",

    /* Modules */
    \"module\": \"commonjs\",
    \"rootDir\": \"./src\",
    \"moduleResolution\": \"node\",
    \"baseUrl\": \".\",
    \"paths\": {
      \"src/*\": [\"./src/*\"],
      \"/*\": [ \"./src/*\" ],
    },
    \"outDir\": \"./dist\"
  }
}

我的想法是问题在于我如何设置 tsconfig。 我尝试查看文档,但我显然不理解路径部分。我已尝试对路径进行多次更改,但似乎仍然无法正常工作。

任何帮助将不胜感激。

    标签: node.js typescript


    【解决方案1】:

    为遇到此问题的人留下这条面包之路。

    TLDR; tsconfig 无法做到这一点。您需要使用诸如 Webpack、Gulp 或其他 npm 包之类的包来帮助解决绝对导入问题。

    我的建议: 如果您正在努力让项目启动并运行,请暂时坚持使用相对导入。然后您可以查看 3rd 方工具来实现绝对路径。

    【讨论】:

      猜你喜欢
      • 2013-02-25
      • 2022-01-14
      • 1970-01-01
      • 2022-11-14
      • 1970-01-01
      • 1970-01-01
      • 2022-01-05
      • 2018-11-03
      • 2017-02-21
      相关资源
      最近更新 更多