美文网首页
2022-08-18 TS 装饰器的引入使用

2022-08-18 TS 装饰器的引入使用

作者: 张益达_pearl | 来源:发表于2022-08-17 10:52 被阅读0次

背景:目前项目里面并未引入装饰器,只是运用了高阶组件,高阶组件的使用在一定程度上提高了代码的复用性,但是装饰器可以更灵活的达到效果和目的,所以准备将装饰器的概念引入到项目里面去且不限于此,提高代码的复用性和可拓展性,增加对react的使用范围,从而提高开发效率,提高团队的开发水平。

装饰器的概念:装饰器是一种特殊类型的声明,它能够被附加到类、方法、访问符、属性或参数上。 这种解释太抽象了 我的理解就是通俗的讲,他是一个方法,可以注入到类、属性、方法、参数上,用于扩展类、属性、方法、参数的功能。 打个比方 你一个组件不具备一个更换背景颜色的功能,但是我使用了一个装饰器(decorators) 那么就可以使我的这个组件具备更换背景颜色的功能了,这就是对组件扩展的一个简单的体现;

常见的装饰器有:普通装饰器(无法传参)、装饰器工厂(可传参)

装饰器类型:

类装饰器

属性装饰器

方法装饰器

函数参数装饰器

类装饰器

类装饰器在类声明之前被声明(紧靠着类声明);

类装饰器应用于类构造函数,可以用来监视、修改或替换类定义;

类的构造函数将作为唯一参数传递给装饰器;

如果类装饰器返回一个值,它会使用返回的构造函数替换原来的类声明;

属性装饰器

属性装饰器用来装饰类的成员属性;

在运行时当作函数被调用,传入下列2个参数:

(1)对于静态成员来说是类的构造函数,对于实例成员是类的原型对象

(2)属性的名字

方法装饰器

方法装饰器用来装饰类的方法(静态方法和实例方法都可以);

方法装饰器可以监视、修改或替换方法定义;

方法装饰器会在运行时传入下列3个参数:

(1)对于静态成员来说是类的构造函数,对于实例成员是类的原型对象。

(2)方法的名字。

(3)方法的属性描述符。

函数参数装饰器

参数装饰器表达式会在运行时当作函数被调用,可以使用参数装饰器为类的原型增加一些元素数据,传入下列3个参数:

(1)对于静态成员来说是类的构造函数,对于实例成员是类的原型对象。

(2)方法的名字。

(3)参数在函数参数列表中的索引。

装饰器执行顺序

装饰器工厂需要先求值,再装饰,求值顺序是由上到下

装饰器可以直接求值,装饰顺序是由下到上

相关文章

  • 装饰器实验

    装饰器实验 说明 ts内包含了四个装饰器,类装饰器、属性装饰器、函数装饰器、参数装饰器,本文中测试一下其的使用。 ...

  • 装饰器编写get请求

    说明 本文演示使用装饰器编写get请求的方法 准备工作 编写代码 测试执行ts-node .\index.ts,返...

  • TS装饰器

    装饰器是一种特殊类型的声明,本质上就是一个方法,可以注入到类、方法、属性、参数上,扩展其功能; 常见的装饰器:类装...

  • TS装饰器

    装饰器是一种特殊类型的声明,可以被附加到类生命、方法、访问符、属性或参数上,可以修改类的行为。使用@express...

  • ts装饰器

    1、装饰器是什么?装饰器是一种特殊类型的声明,他能够附加到类声明、属性、方法、参数上,可以修改类的行为。通俗的讲,...

  • TS装饰器

    一:类的装饰器:是一种与类(class)相关的语法,用来注释或修改类和类方法,装饰器本身是一个函数,装饰器通过@来...

  • 从零开发ts装饰器管理koa路由

    前言 两年前刚学ts,当时搭了个简单的koa的demo,介绍了如何用装饰器管理koa的路由:TS装饰器初体验,用装...

  • vue + ts 装饰器的合理使用

    装饰器 什么是 装饰器? 内裤可以用来遮羞,但是到了冬天它没法为我们防风御寒,聪明的人们发明了长裤,有了长裤后宝宝...

  • TS 装饰器(1): 基础用法

    TS 装饰器(1): 基础用法 1、什么是装饰器 装饰器是通过添加标注的方式,来对类型进行扩展的一种方式。 只能在...

  • 1.11 Angular + HighChart

    1.方法一1.1安装包 1.2引入模块在app.modules.ts中引入 1.3在使用chart的组件ts中引入...

网友评论

      本文标题:2022-08-18 TS 装饰器的引入使用

      本文链接:https://www.haomeiwen.com/subject/aqlegrtx.html