最近刚刚接触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定义文件
(未完待续)
时间: 2024-10-17 13:56:55