23 lines
		
	
	
		
			445 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			445 B
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| // #docregion
 | |
| import { Injectable } from '@angular/core';
 | |
| 
 | |
| export class User {
 | |
|   constructor(
 | |
|     public name: string,
 | |
|     public isAuthorized = false) { }
 | |
| }
 | |
| 
 | |
| // Todo: get the user; don't 'new' it.
 | |
| let alice = new User('Alice', true);
 | |
| let bob = new User('Bob', false);
 | |
| 
 | |
| @Injectable()
 | |
| export class UserService {
 | |
|   user = bob;  // initial user is Bob
 | |
| 
 | |
|   // swap users
 | |
|   getNewUser() {
 | |
|     return this.user = this.user === bob ? alice : bob;
 | |
|   }
 | |
| }
 |