
typescript
I1326
前端坑里摸爬滚打的新猿
展开
-
typescript上手-装饰器(8)
简介装饰器是一种特殊类型的声明,他能附加到类声明方法属性或参数上可以修改类的行为;说人话就是装饰器是一个方法,作用于类方法属性参数以便修改扩展相应功能。es7中装饰器Decorators已经有提案了,但是尚未形成标准,在ts中已经进行了支持,但是ts装饰器也是一项实验性特性,在未来的版本中可能会发生改变。若要启用实验性的装饰器特性,你必须在命令行或tsconfig.json里启用experimentalDecorators编译器选项: tsc --target ES5 --experimentalD原创 2020-06-21 21:12:12 · 179 阅读 · 0 评论 -
typescript上手-命名空间(7)
命名空间命名空间就是之前的内部模块,任何以module关键字声明的内部模块,现在都使用namespace关键字进行替换。命名空间指在代码量较大的情况下,为了避免各种变量冲突,将功能相近的函数、类、接口等放置到命名空间;命名空间和模块化还是有些区别的,命名空间是内部模块主要是组织规划代码避免冲突,模块通常指的是外部模块,解决代码复用的问题,在一个模块中可能会存有多个命名空间开始首先看一下在不使用命名空间是代码可能会是这样 interface Animal{ name:string; say(原创 2020-06-20 13:01:05 · 183 阅读 · 0 评论 -
typescript上手-枚举(6)
枚举前两天写数据类型的时候有简单介绍过枚举类型,这篇将会更加详尽的列举不同场景枚举的使用数字枚举例如在查询订单状态时经常会返回状态码0、1、2、3,分别对应已支付、未支付、订单取消、申请售后;对新接手的人完全一头雾水,使用数字枚举进行命名,更加清晰; enum OrderType { finish, notPay, cancel, afterSales }如上,我们定义了一个数字枚举, 默认序列为0起始,或者按需初始化成员的值 enum OrderTy原创 2020-06-19 22:50:09 · 289 阅读 · 0 评论 -
typescript上手-泛型(5)
泛型介绍在项目中,组件不仅能够支持当前的数据类型,也需要能支持未来的数据类型,泛型就是用来解决这个场景问题的Hello World不用泛型又要满足条件的话,函数可能是下面这样: function fun(arg: number):any { return arg; }但是使用any就相当于放弃了ts的类型检查,或者使用重载来实现,但是会使得代码严重冗余,我们需要一种更简洁的方法使传入参数的类型和返回类型一致,就可以使用泛型 function fun<T>(arg: T原创 2020-06-18 19:26:29 · 153 阅读 · 0 评论 -
typescript上手-接口interface(4)
介绍TypeScript的核心原则之一是对值所具有的结构进行类型检查。 它有时被称做“鸭式辨型法”或“结构性子类型化”。 在TypeScript里,接口的作用就是为这些类型命名和为你的代码或第三方代码定义契约。说人话接口是一种规范的定义,定义了行为和动作的规范,和抽象类abstract比较相像,但是能力更强属性接口自定义方法传入参数,对json进行约束接口初探下面通过一个简单示例来观察接口是如何工作的: function Cat(obj: { name: string }) { c原创 2020-06-17 16:25:43 · 272 阅读 · 0 评论 -
typescript上手-类(3)
介绍传统的javascript只有对象,没有类的概念,对于面向对象方式编程没有很好的设计,当发现问题时,已经成千上万的人在使用了,所以大的修改几乎没有,都是各种修修补补,小的语法糖更新,例如es6新加入的类Class,当然class并不是语法糖,但核心还是围绕prototype来玩。类这里先放一个es5定义一个类 function Cat(name){ this.name = name; this.say = function(){console.log(this.name)} } va原创 2020-06-16 22:45:37 · 276 阅读 · 0 评论 -
typescript上手-函数(2)
函数和js一样,ts函数可以创建有名字的函数和匿名函数。在es5中定义一个function有这么两种方式 // 命名函数 function fun(ags) { return ags; } // 匿名函数 let fun = function(ags) { return ags };函数类型在ts中变量都是有固定的类型的,函数同样需要指定类型,包括参数和返回值 function toStr(x: number): string { return x + ''原创 2020-06-15 15:37:03 · 546 阅读 · 0 评论 -
typescript上手-准备\基础类型(一)
因为平时的项目中鲜有用到面向对象的场景,对ts的学习也一直没有正式的提上日程,随着vue3的一直吵闹ts支持的消息充斥圈子,也决心系统学习下,毕竟可以不用,但是不能不会。安装官网的介绍,可以直接通过vscode的插件进行安装,我一向是sublime的簇拥,这里还是通过传统的npm进行安装 npm install -g typescript编译随便敲两行ts的代码,保存为ts文件; function domWrite(ops:string) { return "Hi, " + ops;原创 2020-06-14 18:39:36 · 225 阅读 · 0 评论