TypeScript 引入第三方包,報無法找到模塊錯誤


以 react-router-dom 模塊為例

1. npm加上 @types/

根據報錯提示嘗試安裝該庫的TypeScript版本 (該庫的 ts 聲明文件),也就是在該庫的名稱前加上 @types/

npm install @types/XXX
or
yarn add @types/XXX

//本例中
npm install @types/react-router-dom

在方法一可行的情況下,推薦使用方法一但是,不是所有的第三方庫都有 TypeScript 的版本,所以方法一不能保證百分百有效,如果方法一不奏效,那么我們來看一下方法二。

2. 添加配置文件

新建文件夾src/@types/,在 src 目錄新建@types目錄,在其中編寫.d.ts聲明文件,聲明文件會自動被識別,可以在此為一些沒有聲明文件的模塊編寫自己的聲明文件。
本例子為 react-router-dom.d.ts
聲明模塊類型

declare module 'XXX' {
  const content: any
  export = content
}

//本例中
declare module 'react-router-dom' {
  const content: any
  export = content
}

實際上在 tsconfig include 字段包含的范圍內編寫 .d.ts,都將被自動識別。在x.js相同目錄創建同名聲明文件x.d.ts,這樣也會被自動識別;typings 聲明管理器,了解不多,已經不推薦使用。(樓主使用無效,想要嘗試可看TypeScript 引入第三方包,報無法找到模塊錯誤

--
引用:
TypeScript 中的聲明文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM