typescript A-8.ts
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了typescript A-8.ts相关的知识,希望对你有一定的参考价值。
@Directive({ selector: '[showIfLoggedIn]' })
export class ShowIfLoggedInDirective {
subscription: Subscription;
@Input() showIfLoggedIn: boolean;
constructor(private templateRef: TemplateRef<any>,
private viewContainer: ViewContainerRef,
private authQuery: SessionQuery
){}
ngOnInit() {
this.subscription = this.authQuery.isLoggedIn$.subscribe(isLoggedIn => {
this.viewContainer.clear();
if (isLoggedIn) {
if (this.showIfLoggedIn) {
this.viewContainer.createEmbeddedView(this.templateRef);
} else {
this.viewContainer.clear();
}
} else {
if (this.showIfLoggedIn) {
this.viewContainer.clear();
} else {
this.viewContainer.createEmbeddedView(this.templateRef);
}
}
});
}
ngOnDestory() {
this.subscription.unsubscribe();
}
}
以上是关于typescript A-8.ts的主要内容,如果未能解决你的问题,请参考以下文章
typescript TypeScript Snippets #typescript
TypeScript入门五:TypeScript的接口
TypeScript系列教程--初探TypeScript
TypeScript入门三:TypeScript函数类型
typescript使用 TypeScript 开发 Vue 组件
认识 TypeScript