34 lines
		
	
	
		
			876 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			876 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
// #docplaster
 | 
						|
// #docregion
 | 
						|
// #docregion unless-declaration
 | 
						|
import { Directive, Input } from '@angular/core';
 | 
						|
 | 
						|
// #enddocregion unless-declaration
 | 
						|
import { TemplateRef, ViewContainerRef } from '@angular/core';
 | 
						|
 | 
						|
// #docregion unless-declaration
 | 
						|
@Directive({ selector: '[myUnless]' })
 | 
						|
export class UnlessDirective {
 | 
						|
  // #enddocregion unless-declaration
 | 
						|
 | 
						|
  // #docregion unless-constructor
 | 
						|
  constructor(
 | 
						|
    private templateRef: TemplateRef<any>,
 | 
						|
    private viewContainer: ViewContainerRef
 | 
						|
    ) { }
 | 
						|
  // #enddocregion unless-constructor
 | 
						|
 | 
						|
  // #docregion unless-set
 | 
						|
  @Input() set myUnless(condition: boolean) {
 | 
						|
    if (!condition) {
 | 
						|
      this.viewContainer.createEmbeddedView(this.templateRef);
 | 
						|
    } else {
 | 
						|
      this.viewContainer.clear();
 | 
						|
    }
 | 
						|
  }
 | 
						|
  // #enddocregion unless-set
 | 
						|
  // #docregion unless-declaration
 | 
						|
}
 | 
						|
// #enddocregion unless-declaration
 | 
						|
// #enddocregion
 |