title: ngModel custom ValuesAccessor
body: <p>Advanced question about ngModel and DI.</p>
  
  <p>As i can see here = <a href="https://github.com/angular/angular/blob/2.0.0-beta.1/modules/angular2/src/common/forms/directives/ng_model.ts#L68" rel="nofollow">https://github.com/angular/angular/blob/2.0.0-beta.1/modules/angular2/src/common/forms/directives/ng_model.ts#L68</a>
  ngModel wating for providers to come from NG_VALUE_ACCESSOR OpaqueToken. This mean if i want to create custom components which should support ngModel binding i should pass my realization of ValueAccessor to DI. So there is two questions in my mind.</p>
  
  <p>1) How can i do this?</p>
  
  <p>2) What's about default ValueAccessor for <code>&lt;input&gt;</code> elements? How to make it continue to work and use mine only for custom components?</p>
  
  <p>Btw as i see in here: <a href="https://github.com/angular/angular/blob/2.0.0-beta.1/modules/angular2/src/common/forms/directives/shared.ts#L102" rel="nofollow">https://github.com/angular/angular/blob/2.0.0-beta.1/modules/angular2/src/common/forms/directives/shared.ts#L102</a> defaultValueAccessor is last. So this mean if i globally pass mine ValueAccessor throught DI system than default one have never been returned.</p>