Cuando intento inyectar CUALQUIER dependencia, aparece un error extraño

TypeError: Cannot set property 'stack' of undefined
at NoProviderError.set [as stack] (errors.js:64)
at assignAll (zone.js:704)
at NoProviderError.ZoneAwareError (zone.js:775)
at NoProviderError.BaseError [as constructor] (errors.js:26)
at NoProviderError.AbstractProviderError [as constructor] (reflective_errors.js:53)
at new NoProviderError (reflective_errors.js:102)
at ReflectiveInjector_._throwOrNull (reflective_injector.js:994)
at ReflectiveInjector_._getByKeyDefault (reflective_injector.js:1031)
at ReflectiveInjector_._getByKey (reflective_injector.js:981)
at ReflectiveInjector_.get (reflective_injector.js:743)
at AppModuleInjector.NgModuleInjector.get (ng_module_factory.js:149)
at CompiledTemplate.proxyViewClass.AppView.injectorGet (view.js:152)
at CompiledTemplate.proxyViewClass.DebugAppView.injectorGet (view.js:580)
at CompiledTemplate.proxyViewClass.View_AppComponent_Host0.createInternal (host.ngfactory.js:15)
at CompiledTemplate.proxyViewClass.AppView.createHostView (view.js:108)

Acabo de usar el nuevo comando Angular-Cli ng PROJECT_NAME_HERE.

Dentro de mi app.component.ts todo lo que tengo es

import { Component } from '@angular/core';
import { FormBuilder } from '@angular/forms';

@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.sass']
})
export class AppComponent {

 constructor(
   private formBuilder: FormBuilder
 ) {
 }

}

Editar: El error que recibí se debió a un problema de v0.7.5 de zone.js, y como el usuario 3492940 y Santanu Biswas declararon que también necesitaba importar el ReactiveFormsModule en mi app.module

2
vpt 13 ene. 2017 a las 18:37

3 respuestas

La mejor respuesta

Hacer downgrade zone.js a 0.7.4

npm install --save zone.js@0.7.4

Es un problema en la versión 0.7.5. Issue # 595

1
m.artamoshkin 13 ene. 2017 a las 15:48

Debe importar ReactiveFormsModule desde @angular/forms en su AppModule y también incluirlo en la lista imports.

2
Santanu Biswas 13 ene. 2017 a las 15:55

Todavía soy relativamente nuevo con los componentes de Angular 2, pero al mirar su componente, creo que necesita moduleId: module.id,

@Component({
  moduleId: module.id,
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.sass']
})
0
Logan_B 13 ene. 2017 a las 15:51