昨天的時候,用tsd install 其它庫後,要想引用,必須在頂部加入node
/// <reference path="underscore/underscore.d.ts" /> 這樣的引用,才能在ts中有提示。jquery
後來我想是否是安裝順序有誤? 原來是先安裝vs code,後安裝node ,tsc。typescript
因而我從新安裝了遍 vs code。shell
參考網上說明來配置typescript可在vs code中編譯,由於總不能使用 控制檯去 一次次的 用 tsc 來編譯吧!npm
一、在項目目錄下添加 tsconfig.json 。內容以下 。這段內容彷佛沒什麼工具自動添加的。json
{
"compilerOptions": {
"target": "ES5",
"noImplicitAny": false,
"module": "amd",
"removeComments": false,
"sourceMap": true
}
}less
二、藉助vs code的編譯功能,自動生成tasks.json 文件 。工具
按下ctrl +shift +B 來啓動編譯。這時編譯不知道要作什麼,由於你沒有任務配置文件 ,它要爲你添加一個默認的。spa
點擊後 .vscode/tasks.json 的文件自動生成。code
這個文件內容很長,是好多類型的任務的模板。 有typescript 編譯、glup 編譯less文件等樣式,以供參考 。
編譯typescript的有兩段,一看就明白意思,咱們用第2段的內容。
{
"version": "0.1.0",
// The command is tsc. Assumes that tsc has been installed using npm install -g typescript
"command": "tsc",
// The command is a shell script
"isShellCommand": true,
// Show the output window only if unrecognized errors occur.
"showOutput": "silent",
// Tell the tsc compiler to use the tsconfig.json from the open folder.
"args": ["-p", "."],
// use the standard tsc problem matcher to find compile problems
// in the output.
"problemMatcher": "$tsc"
}
三、 此時建個 ts後綴的文件來試試手吧!
能夠在ts文件裏,寫個 $ 看是否有提示,
代碼寫好後,按下 ctrl+shift +B來編譯。此時會在ts文件旁邊生成js ,map兩個文件 。
你們注意:
一、在紅色的1處, 看到我已經 tsd install jquery
二、在2處,我並未引用 /// <reference path="jquery/jquery.d.ts" /> 之類的話
三、輸入 $ ,它已經能智能提示了,看來tsd.d.ts是全局可見,做用相似_referece.js 。
typescript的配置到此結束了!
----------------------------------------------------------------------------------------------------------
後來我又在新文件 夾中,建個項目,一樣的操做,可是輸入$,卻不出現智能提示,爲何呢?因而我嘗試
一、我在編寫的 ts文件上手動添加引用,就能夠提示,刪了引用後,智能提示就沒了。
二、我隨便把這個ts文件複製到另外一個目錄裏, 奇怪,此時不加引用又能夠智能提示了。
三、 我再刪除這個文件和目錄,剛纔不能智能提示的,居然如今能夠提示了 ,功能正常了!。。。。。。。
最後我認爲這是 vs code的一個bug!
另外,vs code把許多功能放到了Command palette裏面,我我的認爲變相的減小了菜單項,不知道微軟是出於什麼目的這樣作,總之給初學者會帶來煩惱,如圖: