58 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| 
 | |
| p.location-badge.
 | |
|   exported from <a href="/angular2/di_annotations.html">angular2/di_annotations</a>
 | |
|   defined in <a href="https://github.com/angular/angular/tree/master/modules/angular2/src/di/annotations_impl.js#L110">angular2/src/di/annotations_impl.js (line 110)</a>
 | |
| 
 | |
| :markdown
 | |
|   `DependencyAnnotation` is used by the framework to extend DI.
 | |
|   
 | |
|   Only annotations implementing `DependencyAnnotation` are added to the list of dependency properties.
 | |
|   
 | |
|   For example:
 | |
|   
 | |
|   ```
 | |
|   class Parent extends DependencyAnnotation {}
 | |
|   class NotDependencyProperty {}
 | |
|   
 | |
|   class AComponent {
 | |
|     constructor(@Parent @NotDependencyProperty aService:AService) {}
 | |
|   }
 | |
|   ```
 | |
|   
 | |
|   will create the following dependency:
 | |
|   
 | |
|   ```
 | |
|   new Dependency(Key.get(AService), [new Parent()])
 | |
|   ```
 | |
|   
 | |
|   The framework can use `new Parent()` to handle the `aService` dependency
 | |
|   in a specific way.
 | |
|   
 | |
| .l-main-section
 | |
|   h2 Members
 | |
|   .l-sub-section
 | |
|     h3 constructor
 | |
| 
 | |
|     
 | |
|     pre.prettyprint
 | |
|       code.
 | |
|         constructor()
 | |
|     
 | |
|     :markdown
 | |
|       
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
|   .l-sub-section
 | |
|     h3 token
 | |
| 
 | |
|     
 | |
|     :markdown
 | |
| 
 | |
|       
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 |