2016-07-13 38 views
13

使用TS 2.0 Beta我無法獲得新的@types工作。地方在我的代碼:Typescript 2.0 @types不會自動引用

import * as angular from 'angular'; 

TS 2.0 @types:

npm install --save @types/angular 
tsc 

編譯器沒有找到d.ts雖然文件: 錯誤:(1,26)TS2307:找不到模塊「角」。

當前(舊)使用打字工具和全局(環境之前)依賴關係的方法沒有問題。

我預期的那樣在這裏描述的d.ts查找與2.0自動工作:

https://blogs.msdn.microsoft.com/typescript/2016/06/15/the-future-of-declaration-files/

也許我失去了一些東西?

+0

遇到同樣的問題,想知道這是否沒有進入2.0 beta版?沒有看到它在維基或他們的博客文章中提到。 :/ –

+0

你用什麼編輯器的方式?例如,在vscode中,這仍然是一個錯誤。顯然tsc應該可以正常工作,只是你的編輯抱怨。 –

+0

我正在使用命令行和本地tsc direclty來排除任何與IDEA相關的問題 – dmudro

回答

0

我遇到了同樣的問題,它可以通過cli tsc app.ts成功構建,但是gulp構建會失敗。就我而言,我需要確保吞噬模塊使用最新的打字稿版本進行編譯,而不是與模塊捆綁在一起的版本,即tsify,通過引用更新的編譯器:.plugin(tsify, {typescript: require('typescript')})

不確定這是否適用於您的情況。

+0

的確,問題似乎在tsc中我不是使用任何東西 – dmudro

13

我與另一個文件有相同的問題 - tsc沒有找到node_modules/@ types/es6-shim。明確添加類型tsconfig.json幫助:

{ 
    "compilerOptions": { 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "module": "commonjs", 
    "noEmit": true, 
    "types":["es6-shim"], 
    "sourceMap": true, 
    "target": "es5" 
    } 
} 
+0

''types「:[」es6-shim「],'不能解決我的問題,'typeRoots'也一樣:[」node_modules/@ types /「],' 。它仍然抱怨沒有找到我通常引用的全局變量和其他類型 – lucassp

1

我所看到的在Visual Studio代碼是一個三斜槓基準仍然需要。 tsconfig.json中的類型編譯器選項將解決編譯錯誤,但是VS Code不會在這方面起作用,並且在編輯器中打開文件時它將顯示錯誤。

這裏是節點的三斜線參考的一個例子:

/// <reference path="../node_modules/@types/node/index.d.ts" /> 

三重斜線參考可以是在一個單獨的文件,它將全線適用於其他文件中的項目,但它必須與tsconfig.json文件位於同一個文件夾中。

相關問題