码迷,mamicode.com
首页 > 其他好文 > 详细

typescript类装饰器

时间:2020-05-22 16:49:28      阅读:54      评论:0      收藏:0      [点我收藏+]

标签:hello   return   script   tpc   run   bsp   传参   就是   data   

//类装饰器(无法传参)
function logClass(params:any){//params就是当前的类
    console.log(params)
    params.prototype.apiUrl = 动态扩展的属性;
    params.prototype.run = function(){
        console.log(我是一个run方法);
    }
}


@logClass//后面不可以加分号
 class  HttpClient{
     constructor(){

     }

     getData():void{
        console.log(11)
     }
 }

 let http:any = new HttpClient();
 console.log(http.apiUrl);
 http.run();



//类装饰器(可以传参,装饰器工厂)

function decoClass(params:string){
    return function(target:any){
        console.log(target);//类Client
        console.log(params);//传进来的参
        target.prototype.apiUrl = params;
    }
}


@decoClass(hello)//后面不可以加分号
 class  Client{
     constructor(){

     }

     getData(){

     }
 }

 let client:any = new HttpClient();
 console.log(client.apiUrl)

 

typescript类装饰器

标签:hello   return   script   tpc   run   bsp   传参   就是   data   

原文地址:https://www.cnblogs.com/kaiqinzhang/p/12937922.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!