TypeScript-声明

简介: TypeScript-声明

在经过 TypeScript-声明的介绍了之后我们知道可以通过 declare 来进行声明,那么在 TS 当中呢它是不推荐我们将声明的定义和使用放在同一个文件当中的,它推荐的是将声明的定义单独写到一个文件当中里面去,好了介绍了这些内容之后我们先来看看我们把声明的定义单独写到一个文件当中去,然后在使用声明的地方看看能不能使用声明的定义内容吧。


新建 test.js 假设 test.js 当中的内容是我们第三方的库的内容,test.js 主要内容如下:

let myName = 'yangbuyiya';
function say(name, age) {
    console.log(`my name is ${name}, age is ${age}`);
}
class Person {
    name = 'yangbuyiya';
    age = 34;
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }
    say() {
        console.log(`name is ${this.name}, age is ${this.age}`);
    }
}

然后我们在 index.ts 当中直接将 myName 直接打印,发现在编译器当中是报错的,但是呢,是可以实际运行的:

通过博主在编写如上代码的时候发现,编译器是没有提示的,那么如果想让编译提示是不是就可以利用之前 TypeScript-声明 的内容来进行声明,改造一下如上的示例:

declare let myName: string;
console.log(myName);


如上的代码将声明的定义和使用都写在了同一个文件,这是不推荐的写法,那么该如何把声明的定义单独抽取到一个文件当中呢,比如现在要给 test.js 编写声明文件,那么就需要新建一个 test.d.ts 的文件:


然后在将我们的声明定义代码放入进去,在放入之前 index.ts 当中的 myName 是报错的:


放入之后就不会报错了,不报错的原因也很简单,因为 TS 默认就会去自己去当前项目中查找所有以 .ts 结尾和所有 .d.ts 结尾的文件,那么这么一找,找到了就不会报错了,如果你操作了如上的步骤之后还是报错,那么这个时候就需要修改 tsconfig.json 了:

// 告诉TS需要找哪些文件
"include": [
  "./src/**/*.ts",
  "./src/**/*.d.ts"
]



如上配置的含义代表找 src 下面的所有子目录,两颗星代表所有的子目录,包括 1\2\3\4\5 ... 级等等。




注意点


声明中不能出现实现 以后你要给哪个文件进行声明的定义就是新建一个文件名和原本名字一样的然后以 .d.ts 结尾的文件在其中进行定义即可

最后来完善一下博主的案例即可。


test.d.ts

declare let myName: string;
declare function say(name: string, age: number): void;
declare class Person {
    name: string;
    age: number;
    constructor(name: string, age: number);
    say(): void;
}

index.ts

console.log(myName);
say("yangbuyiya", 18);
let person = new Person("yangbuyiya", 18);
person.say();


测试结果



最后

本期结束咱们下次再见👋~

🌊 关注我不迷路,如果本篇文章对你有所帮助,或者你有什么疑问,欢迎在评论区留言,我一般看到都会回复的。大家点赞支持一下哟~ 💗

相关文章
|
3月前
|
JavaScript 前端开发 程序员
总结TypeScript 的一些知识点:TypeScript 声明文件
程序来输出 "Hello World" :当然,很多流行的第三方库的声明文件不需要我们定义了,比如 jQuery 已经有人帮我们定义好
总结TypeScript 的一些知识点:TypeScript 声明文件
|
7月前
|
JavaScript
TypeScript-声明安装和TypeScript-命名空间补充
TypeScript-声明安装和TypeScript-命名空间补充
24 0
|
7月前
TypeScript-类
TypeScript-类
31 0
|
4月前
|
JavaScript 前端开发 编译器
TypeScript笔记(4)—— TypeScript中的类型注解
TypeScript笔记(4)—— TypeScript中的类型注解
20 0
|
4月前
|
JavaScript
如何在 TypeScript 中定义类
如何在 TypeScript 中定义类
17 0
|
4月前
|
JavaScript 前端开发 编译器
TypeScript进阶(四)声明文件
TypeScript 是一种由微软开发的开源编程语言,它是 JavaScript 的超集,为 JavaScript 添加了静态类型检查和其他一些特性。TypeScript 的声明文件是一种特殊的文件,用于描述 JavaScript 库、框架或模块的类型信息。通过声明文件,我们可以在 TypeScript 中使用第三方 JavaScript 库,并获得类型检查和智能提示的好处。 本文将深入探讨 TypeScript 声明文件的相关概念、语法和实践,帮助读者更好地理解和使用声明文件。
38 0
|
9月前
|
JavaScript 前端开发 编译器
TypeScript--类型声明
TypeScript--类型声明
|
12月前
|
JavaScript
TypeScript 小结:近五十个常用TypeScript类型工具的声明、描述、用法示例
近五十个常用TypeScript类型工具的声明、描述、用法示例
84 0
|
JavaScript 前端开发
|
JavaScript 前端开发 程序员
Typescript 变量声明
# 变量声明 `let` 和 `const` 是 JavaScript 里相对较新的变量声明方式。`let` 在很多方面与 `var` 是相似的,但是可以帮助大家避免在 JavaScript 里常见一些问题。`const` 是对 `let` 的一个增强,它能阻止对一个变量再次赋值。