Decorator [?dek?re?t?(r)] 修饰器/装饰器 -- 装饰模式
Posted 每天都要进步一点点
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Decorator [?dek?re?t?(r)] 修饰器/装饰器 -- 装饰模式相关的知识,希望对你有一定的参考价值。
装饰模式 -- 原先没有,后期添加的属性和方法
修饰器(Decorator)是一个函数,用来修饰类的行为。这是ES7的一个提案,目前Babel转码器已经支持。
需要先安装一个插件:
npm install babel-plugin-transform-decorators-legacy --save-dev
然后在项目根目录下,找到:.babelrc => 修改为
"plugins": ["transform-runtime","transform-decorators-legacy"],
// 添加属性,添加方法,在方法执行之前添加动作
1.给添加一个静态方法(属性)
function chooseCourse(target){
target.cours = ‘物理‘;
}
function classroom(target){
target.study = function(){
console.log(target.identity + ‘学习‘);
}
}
@chooseCourse
@classroom
class Student{
}
Student.study();
2.修饰器带参数
function chooseCourse(courseName){
return function(target){
target.courseName = courseName;
}
}
以上是关于Decorator [?dek?re?t?(r)] 修饰器/装饰器 -- 装饰模式的主要内容,如果未能解决你的问题,请参考以下文章