分享更有价值
被信任是一种快乐

怎么在Angular service中使用TemplateRef

文章页正文上

Angular serviceTemplateRefAngular serviceTemplateRef NzNotificationService.template

template(template:TemplateRef,options?:NzNotificationDataOptions):NzNotificationRef;

TemplateRef service NzNotificationService.template service html template service html ng-template dom service

import{Injectable,TemplateRef}from'@angular/core';
import{NzNotificationService}from'ng-zorro-antd/notification';

exportenumEMessageCode{
XXXError=1024,
YYYError=1025,
}

exportconstMESSAGE={
[EMessageCode.XXXError]:'XXXError...',
[EMessageCode.YYYError]:'YYYError...',
};

@Injectable({
providedIn:'root',
})
exportclassMessageService{
privatetemplateMap=newMap();
constructor(privatenotificationService:NzNotificationService){}

//templateRef
publicinitTemplate(message:EMessageCode,ref:TemplateRef):void{
this.templateMap.set(message,ref);
}

publicshowMessage(messageCode:EMessageCode){
switch(messageCode){
caseEMessageCode.XXXError:
returnthis.notificationService.template(this.templateMap.get(messageCode),{
nzDuration:0,
});
caseEMessageCode.YYYError:{
returnthis.notificationService.error('YYYError',MESSAGE[EMessageCode.YYYError]);
}
}
}

publicremoveMessage(messageId?:string){
this.notificationService.remove(messageId);
}
}

import{Component,TemplateRef,ViewChild,AfterViewInit}from'@angular/core';
import{EMessageCode,MessageService}from'./message.service';

@Component({
selector:'app-message-service-virtual-ref',
template:`ThereareXXXError,youmustreferto
something
tocheckout`,
})
exportclassMessageServiceVirtualRefComponentimplementsAfterViewInit{
@ViewChild('xxx_ref')xxxTemplateRef!:TemplateRef;

constructor(privatemessageService:MessageService){}

ngAfterViewInit():void{
this.messageService.initTemplate(免费云主机、域名EMessageCode.XXXError,this.xxxTemplateRef);
}
}

Angular serviceTemplateRef

相关推荐: javascript支不支持求余数的方法

这篇文章主要介绍“javascript支不支持求余数的方法”,在日常操作中,相信很多人在javascript支不支持求余数的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”javascript支不支持求余数的方法”的疑惑有所帮…

文章页内容下
赞(0) 打赏
版权声明:本站采用知识共享、学习交流,不允许用于商业用途;文章由发布者自行承担一切责任,与本站无关。
文章页正文下
文章页评论上

云服务器、web空间可免费试用

宝塔面板主机、支持php,mysql等,SSL部署;安全高速企业专供99.999%稳定,另有高防主机、不限制内容等类型,具体可咨询QQ:360163164,Tel同微信:18905205712

主机选购导航云服务器试用

登录

找回密码

注册