簡體   English   中英

TypeScript 與經典模塊解決工作不正確

[英]TypeScript with classic moduleResolution work incorrect

我從https://zhongsp.gitbook.io/typescript-handbook/handbook/module-resolution中學習到 moduleResolution =classic

typescript 編譯器按此順序查找模塊

  1. /root/src/文件夾/moduleB.ts

  2. /root/src/folder/moduleB.d.ts

  3. /root/src/moduleB.ts

  4. /root/src/moduleB.d.ts

  5. /root/moduleB.ts

  6. /root/moduleB.d.ts

  7. /moduleB.ts

  8. /moduleB.d.ts

但我發現當我使用

import {a} from "a"

它顯示找不到模塊,

我的文件結構是

|--main.ts

|--a.ts

|--node_modules

僅當我將a.ts放入文件夾node_modules時它才有效

是不再支持moduleResolution=classic還是我的配置有問題?

正如TypeScript 文檔中的statet :

Module Resolution Strategy Classic :這曾經是 TypeScript 的默認解析策略。 如今,這種策略主要是為了向后兼容。

我不完全知道您的模塊的外觀,但我假設您的a.ts文件中有這樣的內容:

export default a;

如果是這樣,那么您應該能夠像這樣導入模塊(請注意,當前文件夾的路徑以“./”開頭):

import a from "./a"

但如果你的a.ts看起來更像這樣(沒有導出默認值):

export const a....

比你需要像這樣導入它:

import { a } from "./a"

查看此帖子以獲取有關模塊導入的詳細信息

嘗試將baseUrl添加到您的 tsconfig。

https://www.typescriptlang.org/tsconfig#baseUrl

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM