_ts声明文件">
赞
踩
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>TypeScript核心</title>
</head>
<body>
<div class="main"></div>
<script src="lib/jquery-1.12.4.js"></script>
</body>
</html>
declare const $:(selector:string) => {
width():number;
height():number;
ajax(url:string, config:{}):void
}
console.log($);
// $.ajax();
console.log($('.main').width());
console.log($('.main').height());
ts不推荐将声明的定义和使用放在一个文件中。推荐将定义写在一个单独的文件中。
案例:在ts文件中,使用外部的.js文件,需要先写.js文件的声明文件。案例如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>TypeScript核心</title>
</head>
<body>
<div class="main"></div>
<script src="./lib/declareTest.js"></script>
</body>
</html>
// 变量 let myName = 'gege' // 函数 function say(name, age) { console.log(`name is ${name}, age is ${age}`); } // 类 class Person { name = '123'; age = 12 constructor(name, age) { this.name = name; this.age = age } say(){ console.log(`name is ${name}, age is ${age}`); } }
declare let myName:string // 说明myName是个类型为string的变量
declare function say(name:string, age:number):void; // 声明中不能有实现
// 注意点:声明中不能出现实现,只能有声明
declare class Person {
name: string;
age: number;
constructor(name:string, age:number) {};
say():void;
}
import say = Validation.say;
console.log(myName);
say('gege', 18);
let p = new Person('zz', 3)
p.say()
声明文件有很多种。
所有功能绑定到全局变量或全局对象上,参照https://www.typescriptlang.org/docs/handbook/declaration-files/by-example.html中的模板(见下方列表),自行编写声明文件
参照https://www.typescriptlang.org/docs/handbook/declaration-files/by-example.html中的模板(见下方列表),自行编写声明文件
对于常用的第三方库,其实已经有大神帮我们编写好了对应的声明文件,所以在企业开发中,如果我们需要使用一些第三方JS库的时候,我们只需要安装别人写好的声明文件即可。
import jQuery = require('jquery')
jQuery().width() // 未安装声明文件的话,jQuery中的方法不会有自动提示
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。