es7学习教程之Decorators(修饰器)详解


Posted in Javascript onJuly 21, 2017

本文主要给大家介绍的是关于es7 Decorators(修饰器)的相关内容,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍:

ES6 Decorators(修饰器)

修饰器(Decorator)是一个函数,用来修改类的行为。这是ES7的一个提案,目前Babel转码器已经支持

我们在游戏大型项目种经常会用到的方法,现在es6直接支持

想要使用Decorator的话需要我们配置一下文件夹,配置一下环境

npm install babel-plugin-transform-decorators-legacy --save-dev

完事配置一下babelrc文件

"plugins": ["transform-decorators-legacy"]

先说一下装饰器的特点

装饰器本质是一个函数

@hometown hometown()

装饰对象可以使用多个装饰器

@hometown("山西")
@school
 class Student{
  constructor(name){
   this.name=name;
  }
  @studyke("HTML")
  study(){
   console.log(this.name+" is studying"+this.ke+"!")
  }
}

装饰器可以带参数

function hometown(diqu){
   //target.home="广灵";
   return function(target){
    target.home=diqu;
   }
  }

@hometown("山西")
class...

装饰器修饰 类

function school(target){
   console.log("123")
   target.schoolName="师徒课堂";
  }
  function hometown(diqu){
   //target.home="广灵";
   return function(target){
    target.home=diqu;
   }
  }

  function studyke(kemu){
   return function(target){
    target.ke=kemu;
   }
  }
  @hometown("山西")
  @school
  class Student{
   constructor(name){
    this.name=name;
   }
   @studyke("HTML")
   study(){
    console.log(this.name+" is studying"+this.ke+"!")
   }
  }
  console.log(Student.schoolName);
  console.log(Student.home);

  let l=new Student("xiaoA");
  l.study();

  @school
  function Teacher(){

  }

总结

以上就是这篇文章的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
JS Array对象入门分析
Oct 30 Javascript
ie6下png图片背景不透明的解决办法使用js实现
Jan 11 Javascript
使用AOP改善javascript代码
May 01 Javascript
javascript跨域方法、原理以及出现问题解决方法(详解)
Aug 06 Javascript
最佳的JavaScript错误处理实践
Jul 16 Javascript
Bootstrap导航简单实现代码
Mar 06 Javascript
Bootstrap栅格系统使用方法及页面调整变形的解决方法
Mar 10 Javascript
微信小程序 chooseImage选择图片或者拍照
Apr 07 Javascript
Angular2使用Augury来调试Angular2程序
May 21 Javascript
微信小程序 空白页重定向解决办法
Jun 27 Javascript
js数组实现权重概率分配
Sep 12 Javascript
详解JavaScript 浮点数运算的精度问题
Jul 23 Javascript
VUE中使用Vue-resource完成交互
Jul 21 #Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
Jul 21 #Javascript
js图片轮播插件的封装
Jul 21 #Javascript
Javascript es7中比较实用的两个方法示例
Jul 21 #Javascript
AngularJS中使用three.js的实例详解
Jul 21 #Javascript
Axios学习笔记之使用方法教程
Jul 21 #Javascript
Vue学习笔记进阶篇之函数化组件解析
Jul 21 #Javascript
You might like
Ajax PHP简单入门教程代码
2008/04/25 PHP
PHP下通过exec获得计算机的唯一标识[CPU,网卡 MAC地址]
2011/06/09 PHP
php中计算程序运行时间的类代码
2012/11/03 PHP
php mysql like 实现多关键词搜索的方法
2016/10/29 PHP
CodeIgniter框架验证码类库文件与用法示例
2017/03/18 PHP
PHP http请求超时问题解决方案
2020/11/13 PHP
Yii 实现数据加密和解密
2021/03/09 PHP
javascript ajax 仿百度分页函数
2013/10/29 Javascript
Jquery遍历Json数据的方法
2015/04/20 Javascript
vue实现可增删查改的成绩单
2016/10/27 Javascript
微信小程序  wx.request合法域名配置详解
2016/11/23 Javascript
JS中Safari浏览器中的Date
2017/07/17 Javascript
解决Layui数据表格中checkbox位置不居中的方法
2018/08/15 Javascript
js/jQuery实现全选效果
2019/06/17 jQuery
Vuex的实战使用详解
2019/10/31 Javascript
浅谈JavaScript中this的指向更改
2020/07/28 Javascript
跟老齐学Python之赋值,简单也不简单
2014/09/24 Python
使用Python搭建虚拟环境的配置方法
2018/02/28 Python
django中的HTML控件及参数传递方法
2018/03/20 Python
使用Django简单编写一个XSS平台的方法步骤
2019/03/25 Python
python之拟合的实现
2019/07/19 Python
Django项目使用ckeditor详解(不使用admin)
2019/12/17 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
锐步美国官方网站:Reebok美国
2018/01/10 全球购物
市场营销专业推荐信
2013/11/03 职场文书
电气工程师岗位职责
2014/01/01 职场文书
客户表扬信范文
2014/01/10 职场文书
财务学生的职业生涯发展
2014/02/11 职场文书
《藤野先生》教学反思
2014/02/19 职场文书
2014迎新年晚会策划方案
2014/02/23 职场文书
浪费资源的建议书
2014/03/12 职场文书
网络管理专业求职信
2014/03/15 职场文书
幼儿园的门卫岗位职责
2014/04/10 职场文书
五月的鲜花活动方案
2014/08/21 职场文书
保密工作整改情况汇报
2014/11/06 职场文书
中学生社区服务活动报告
2015/02/05 职场文书