angular

Angular 2.0.0 Metadata_resolver extraño comportamiento



(2)

Tal vez esté utilizando barriles de exportación como este:

export * from ''some-file''; export * from ''another-file'';

En este caso, es posible que tenga dependencias circulares, aunque el código fuente en sí mismo no tiene dependencias circulares.

A veces el mensaje de error

No se pueden resolver todos los parámetros (algunos, cosa ,?)

Indica que tienes una dependencia circular.

Puede intentar importar sus componentes especificando directamente el archivo necesario, sin usar los barriles exportados en los archivos index.ts

es posible que desee ver en esta pregunta:

Importación de barril parece romper orden de carga

... tu pregunta podría ser en realidad un duplicado de este :-)

Angular 2 DI Error - EXCEPCIÓN: No se pueden resolver todos los parámetros

Estoy migrando mi aplicación de angular2 RC5 con andamio de angular-webpack angular a angular 2 2.0.0 con angular cli beta 14.

Estoy luchando con esos errores:

Error no detectado: no se pueden resolver todos los parámetros para PublicInfoDao: (?,?). JS: 532CompileMetadataResolver.getNgModuleMetadata @ metadata_resolver.js: 285RuntimeCompiler._compileComponents @ runtime_compiler.js: 126RuntimeCompiler._compileModuleAndComponents @ runtime_compiler.js: 64RuntimeCompiler.compileModuleAsync @ runtime_compiler.js: 55PlatformRef _._ bootstrapModuleWithZone @ application_ref.js: 303PlatformRef_.bootstrapModule @ application_ref.js: 285 (función anónima) @ main.ts: 13__webpack_require__ @ bootstrap db3609d…: 52 (función anónima) @. * $: 7__webpack_require__ @ bootstrap db3609d…: 23 (una línea de pará). 1

y

metadata_resolver.js: 278Uncaught Error: el valor inesperado ''AppComponent: Com 278 278 278 278 278 278 278 278 278 278 function function function App function function function function function function function function function function function function function function function function @ @ @ @ @ @ @ @ @ @ @ @ @ @ 278 278 278 278 278 278 js: 64RuntimeCompiler.compileModuleAsync @ runtime_compiler.js: 55PlatformRef _._ bootstrapModuleWithZone @ application_ref.js: caracola de la naturaleza de la persona de la que se encuentra en el equipo de usuario de la tarjeta de la que se trata de un tipo de trabajo en el estado de los animales. $: 7__webpack_require__ @ bootstrap db3609d…: 52webpackJsonpCallback @ bootstrap db3609d…: 23 (función anónima) @ main.bundle.js: 1 angular-webpack : angular-webpack

Es un comportamiento extraño porque si quito varios componentes, la aplicación funciona. Pero si agrego un componente simple como:

@Component({ selector: ''tl-result-item'', templateUrl: "./resultitem.component.html", styleUrls: ["./resultitem.component.scss"] }) export class ResultItemComponent { @Input() result:Result; constructor(){} }

Se lanza el segundo error. Si comento @Input() la aplicación funciona. Hay algunos servicios si descomento la aplicación produce el mismo error y si comento algunas líneas, el error desaparece.

Me estoy volviendo loco con esos errores. Estoy pensando que debería ser un problema externo.

¿Alguna idea?

Actualizar:

El primer error podría estar relacionado con https://github.com/AngularClass/angular2-webpack-starter#frequently-asked-questions (segunda pregunta) Tengo varios problemas para migrar a angular 2.0.0 final.

Actualización2:

@NgModule({ providers: [ MetaService, Title, HttpInterceptor, {provide: ConnectionBackend, useClass: XHRBackend}, {provide: Http, useExisting: HttpInterceptor}, {provide: Configuration, useClass: ConfigurationDevelopment} ], imports: [ BrowserModule, HttpModule, FormsModule, ReactiveFormsModule, // APP_ROUTER_PROVIDERS ], declarations: [ AppComponent, ResultItemComponent, TimestampToMomentPipe, TimestampToTimePipe ], bootstrap: [AppComponent] }) export class AppModule { }

Update3: Otro ejemplo de código que falla en cli angular.

Este código funciona correctamente:

this.publicService.all().subcribe(response => { console.log(response); });

Este código falla:

this.publicService.all().subcribe(response => { deserialize(response) });

Excepción explicada anteriormente:

Error no detectado: no se pueden resolver todos los parámetros para PublicInfoDao: (?,?).

¿¿??


medio ambiente.ts

// Angular 2 // rc2 workaround import { enableDebugTools, disableDebugTools } from ''@angular/platform-browser''; import { enableProdMode, ApplicationRef } from ''@angular/core''; // Environment Providers let PROVIDERS: any[] = [ // common env directives ]; // Angular debug tools in the dev console // https://github.com/angular/angular/blob/86405345b781a9dc2438c0fbe3e9409245647019/TOOLS_JS.md let _decorateModuleRef = function identity<T>(value: T): T { return value; }; if (''production'' === ENV) { // Production disableDebugTools(); enableProdMode(); PROVIDERS = [ ...PROVIDERS, // custom providers in production ]; } else { _decorateModuleRef = (modRef: any) => { const appRef = modRef.injector.get(ApplicationRef); const cmpRef = appRef.components[0]; let _ng = (<any>window).ng; enableDebugTools(cmpRef); (<any>window).ng.probe = _ng.probe; (<any>window).ng.coreTokens = _ng.coreTokens; return modRef; }; // Development PROVIDERS = [ ...PROVIDERS, // custom providers in development ]; } export const decorateModuleRef = _decorateModuleRef; export const ENV_PROVIDERS = [ ...PROVIDERS ];

app.module.ts

@NgModule({ providers: [ // expose our Services and Providers into Angular"s dependency injection ENV_PROVIDERS ], imports: [ BrowserModule, HttpModule, FormsModule, ReactiveFormsModule, // APP_ROUTER_PROVIDERS ], declarations: [ AppComponent, ResultItemComponent, TimestampToMomentPipe, TimestampToTimePipe ], bootstrap: [AppComponent] }) export class AppModule { }