最近剛剛接觸TypeScript,感覺非常強大,但是也有一些問題。
比如我們正常寫js時,只要把其他js庫引入頁面,甚至於只要加入到項目中,ReSharper就會自動分析他,並提供語法只能感知,寫代碼很舒服。
但是由於TypeScript是強類型語言,他不允許其他未知的js庫在當前使用,因為沒有辦法做編譯檢測,所以如何在ts中使用其他js庫就成了一個問題。
查了下有以下幾種方法:
1、使用declare關鍵字
declare var $: any; declare var jQuery: any; jQuery(function() { $("<div>").text("TypeScript").appendTo($("body")); })
他的作用在於聲明該變量已經在其他某個js中存在,同時也將失去編譯器對他的所有語法智能感知,語法檢查等功能。
可謂雙刃劍。
其他關於declare關鍵字閱讀:
Whats the difference between “declare class” and “interface” in TypeScript
http://blogs.microsoft.co.il/gilf/2013/07/22/quick-tip-typescript-declare-keyword/
2、使用ts定義文件
(未完待續)