您好,登錄后才能下訂單哦!
TS開發Web前端如何引入JS庫,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
眾所周知,TS需要編譯成JS才能在瀏覽器上跑,TS也能夠調用JS的方法。但是,有一個現成的第三方JS類庫擺在面前,讓它如何能在TS中使用,很多剛入坑的朋友往往不得其門而入。下面我就講講我的辦法吧。
看了上面4個字,大家可能不會不約而同地眉頭一皺,立刻開噴:“喔靠,餿主意!”。我承認,這的確是個笨辦法,但是我的確這么做過。笨辦法也是辦法,重劍無鋒,大巧不工。
對于一些JS庫只有不到200-300行代碼,直接翻譯成TS又何妨呢?自己用TS重寫,跟找typings(很多不一定能找到)或者自己寫*.d.ts的時間其實差不了多少。自己動手,也能加深對庫的理解,夯實自己。2、頁面引入+全局定義
如果對第一條不滿意,不用著急,咱還有別的辦法。第二招,其實也很簡單粗暴。
declarevar$;classApp{init(){$("#msg").html("jquery引用成功!");}}
簡單粗暴的副作用就是不夠優雅,聲明的全局變量$的類型只能是any,這意味著還是弱類型變量,因此IDE中沒有任何的方法和屬性還有類型的提示。因而,完全失去了寫TS的樂趣。下面重點說說怎樣做到優雅。
相信閣下如果看本文之前百度過,肯定看過這種方法。說明,這是主流。所以,我也準備重點詳細地介紹一下。
首先,什么是類型定義文件?
應該有點類似于C++后綴名為.h的頭文件,用于聲明JS主文件的函數接口和變量類型的定義,并且把這些定義暴露給TS使用。有了.d.ts的定義之后,TS就能感知到JS庫相關的代碼提示了。
接著,如何得到.d.ts文件?1.可以先去DefinitelyTyped找找碰碰運氣,一般很流行的庫也許會有。2.用npm的typings查找獲取的,其實跟上面沒什么兩樣。3.網上還能還有一些工具,據說根據js庫能夠反向生成.d.ts。我試了都不靠譜,如果是C#生成.d.ts的成功率我是敢打包票,但是對JS我就只能呵呵了。4.最后,“拿來主義”都不行的情況下,只有自己動手豐衣足食了。
關于TS開發Web前端如何引入JS庫問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。