首页 > 其他 > 详细

ES6学习笔记17 Decorator修饰器 浏览器不支持

时间:2020-05-02 11:01:08      阅读:92      评论:0      收藏:0      [点我收藏+]

{
// 1.修饰器是一个函数 2.修改行为 3.修改类的行为
let readonly=function (target,name,descriptor) {
descriptor.writable=false
return descriptor
}

class Test{
@readonly
time(){
return ‘2020-05-02‘
}
}

let test = new Test()

test.time=function(){
console.log(2)
}

console.log(test.time())


}

{
let typename=function(target,name,descriptor){
target.myname=‘hello‘
}

@typename
class Test{

}

console.log(‘类修饰符‘,Test.myname)

// 第三方库 core-decorators; npm install core-decorators
}

{
//
let log=(type)=>{
return function(target,name,descriptor){
let src_method=descriptor.value
descriptor.value=(...arg)=>{
src_method.apply(target,arg)
console.log(`log ${type}`)
// 实际 new img.src 接口
}
}
}

class ad{

@log(‘show‘)

show(){
console.info(‘ad is show‘)
}

@log(‘click‘)
click(){
console.log(‘ad is click‘)
}
}

let ad = new ad()
ad.show()
ad.click()


}

ES6学习笔记17 Decorator修饰器 浏览器不支持

原文:https://www.cnblogs.com/laohange/p/12815760.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!