美文网首页
ES6之修饰器Decorator

ES6之修饰器Decorator

作者: 我家的猫子在哪里 | 来源:发表于2017-09-29 14:55 被阅读0次

       ES6为类提供修改行为的修饰器函数Decorator,修饰器是一个对类进行处理的函数,它的第一个参数就是要修饰的类,如果一个参数不够的话可以在修饰器外层再封装一层函数。那么大致只有一个参数的修饰器是这样的 function fun(target){...}   @fun Class A{}, function fun(obj){return function(target){...}} @fun(obj) Class A{}。注意修饰器对类的行为改变是在编译时而不是运行时,意味着修饰器本质是编译时执行的函数。

      修饰器不仅可以修饰类,还可以修饰类中的属性。当修饰类中的属性时可以接受三个参数,第一个参数是所要修饰的目标对象,即类的实例,第二个参数是所要修饰的属性名,第三个参数是该属性的描述对象。如果同一个方法有多个修饰器修饰,那么执行的过程中会先从最外层的修饰器进入从最里层的修饰器执行。修饰器不能用于函数,因为存在函数提升,因为在执行函数的修饰时 ,因为函数的提升造成修饰还没有执行就去执行函数。

      core-decorator.js是一个第三方模块,提供几个常见的修饰器。@autobind使得方法中的this对象绑定原始对象;@readonly使得属性或方法不可写;override检查子类方法,是否正确覆盖父类的同名方法,如果不正确报错;@deprecate在控制台显示一条警告,表示该方法已废除;@suppressWarnings抑制@deprecate修饰器的console.warn的调用,但是异步代码发出的调用除外。@Mixin 和 @Trait 等等。

  反正下面的方法就是具体的一些计算的或者别的用途的实现机制,转换成修饰器。

相关文章

  • ES6之修饰器Decorator

    ES6为类提供修改行为的修饰器函数Decorator,修饰器是一个对类进行处理的函数,它的第一个参数就是要修...

  • 27- ES6 装饰器

    1、类的修饰 decorator(target) {} 许多面向对象的语言都有修饰器(Decorator)函数,...

  • es6超好用的语法糖Decorator

    Decorator(修饰器/装饰器)是es6提出的语法糖,用于修改类的行为。不过目前主流浏览器都没有很好的支持,我...

  • @修饰器Decorator

    编前语 修改类的行为 修饰类、修饰类的属性 ES7的一个提案 类的改变在代码编译时发生,不是在运行时 babel转...

  • Decorator 修饰器

    修饰器 修饰器是 ES7 提出的一个提案,用来修改类的行为。目前需要 babel 才可以使用。它最大的特点是:可以...

  • Decorator

    标签(空格分隔): 前端 es6 概念 修饰器(Decorator)是一个函数,用来修改类的行为。这是ES7的一个...

  • es6学习笔记整理(十六)Decorators

    Decorator修饰器 修饰器是一个函数用来修改类的行为: 1、修饰器是一个函数 2、修改行为 3、修改类的行为...

  • ES6中Decorator修饰器的用法

    Decorator是一个函数,用来修改类的行为,即可修饰类的静态属性,也可修饰类的原型上的函数。 修改类的静态属性...

  • (二)20.Decorator19-08-15

    Decorator - 1基本概念 Decorator(修饰器)是一个函数用来修改类的行为,(扩展类的功能,只在类...

  • ES6(十七):ES2017中的修饰器Decorator

    前面的话   修饰器(Decorator)是一个函数,用来修改类的行为。本文将详细介绍ES2017中的修饰器Dec...

网友评论

      本文标题:ES6之修饰器Decorator

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