美文网首页
@装饰器的学习,类装饰器

@装饰器的学习,类装饰器

作者: 时间久了也就那样了 | 来源:发表于2019-01-27 10:58 被阅读0次

//装饰器的学习

  // 通过装饰器可以拿到目标类,同时为他增加一些额外的属性或者方法

  //甚至修改内部的描述,对类做些扩展

//@speak 装饰器在类的外部

class Boy{

    @speak('中文') //无论是在类的内部还是外部都是对这个类装饰

    run(){

        console.log('i can speak' + this.lan)

        console.log('i can run')

    }

}

//target 目标就是@speak 被装饰的这个Boy类

//并且在new Boy的时候就执行了speak

//key装饰器在这个类里面所修饰的方法 run()

//descriptor{writable:true,enumerable:false,configurable:true}

function speak(lan){

    return function (target,key,descriptor){

        console.log(target)  //Boy{}

        console.log(key)    //run

        console.log(descriptor) //{ }

        target.lan=lan

        return descriptor

    }

}

const luke = new Boy()

luke.run() // i can speak 中文

                  // i can run

相关文章

  • 装饰器

    """@装饰器- 普通装饰器- 带参数的装饰器- 通用装饰器- 装饰器装饰类- 内置装饰器- 缓存装饰器- 类实现...

  • typescript 五种装饰器

    装饰器类型 装饰器的类型有:类装饰器、访问器装饰器、属性装饰器、方法装饰器、参数装饰器,但是没有函数装饰器(fun...

  • 装饰器

    装饰器 decorator类装饰器 带参数的装饰器 举例(装饰器函数;装饰器类;有参与无参) https://fo...

  • Python装饰器类的使用——bound/unbound met

    引言 在学习装饰器类方法时发现,如果装饰器类只有__ call __方法则只能装饰普通的函数(function),...

  • TS装饰器初体验,用装饰器管理koa接口

    typescript中的装饰器有很多种,比如类装饰器、方法装饰器、属性装饰器等等,先看看装饰器的定义吧,下面以类装...

  • Python中的装饰器

    Python中的装饰器 不带参数的装饰器 带参数的装饰器 类装饰器 functools.wraps 使用装饰器极大...

  • Python | 装饰器

    使用场景 装饰器 ' @ ' 使用 带参数装饰器 装饰器类

  • @装饰器的学习,类装饰器

    //装饰器的学习 // 通过装饰器可以拿到目标类,同时为他增加一些额外的属性或者方法 //甚至修改内部的描述,...

  • 装饰器4

    装饰器装饰类 使用类装饰器的时候,记得要返回被装饰的类调用的结果装饰器函数 再 init 之前执行 例子1:给类添...

  • Python装饰器

    Python装饰器 一、函数装饰器 1.无参装饰器 示例:日志记录装饰器 2.带参装饰器 示例: 二、类装饰器 示例:

网友评论

      本文标题:@装饰器的学习,类装饰器

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