簡體   English   中英

將外部模塊包含到Typescript文件中時,TS2307錯誤

[英]TS2307 error when including external modules to Typescript file

我通過npm安裝了一個模塊,並試圖在我的打字稿文件中訪問它。

npm install marker-animate-unobtrusive --save

import SlidingMarker = require('marker-animate-unobtrusive');

這導致

//Error TS2307: Cannot find module 'marker-animate-unobtrusive'

搜索該問題會帶來編譯器選項的升級,其他人提到為Type Script創建一個d.ts文件以識別該模塊,但是我在任何地方都沒有一個明確的答案。 我嘗試了這些方法,但到目前為止收效甚微。 如果此信息有幫助,我正在為此使用Angular 2和Ionic 2。

任何幫助表示贊賞!

問題是因為SlidingMarker npm模塊還沒有類型定義。

1)在types / marker-animate-unobtrusive.d.ts中創建通用定義:

declare module 'marker-animate-unobtrusive' {
  const x: any;
  export = x;
}

2)將此文件添加到types / main.d.ts(如果使用的是較新的類型,則為types / index.d.ts)的定義列表:

/// <reference path="marker-animate-unobtrusive.d.ts"></reference>

3)接下來,更新您的導入語句:

import * as SlidingMarker from 'marker-animate-unobtrusive';

ia! 注意,您可能需要將任何轉換為​​“ SlidingMarker”的變量更改為“ any”,以避免其他TypeScript錯誤。

暫無
暫無

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

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