2
내가 AngularDart의 v0.14.0 펍 서버에 내 응용 프로그램을 테스트 실행할 때 유형 생성 typeFactory지도에없는 'XXX'하지만 로컬 호스트에서 실행하면 오류AngularDart의 v0.14.0 오류 : 술집 서버가
Exception: Uncaught Error: Type 'CurrencyService' not found in generated typeFactory maps. Is the type's constructor injectable and annotated for injection?
Stack Trace:
#0 GeneratedTypeFactories.parameterKeysFor (package:di/src/reflector_static.dart:26:5)
#1 Binding.bind (package:di/src/module.dart:61:49)
#2 Module.bindByKey (package:di/src/module.dart:136:17)
#3 Module.bind (package:di/src/module.dart:124:14)
#4 CERPModule.CERPModule (http://localhost:8080/index.dart:71:9)
#5 main.<anonymous closure> (http://localhost:8080/index.dart:59:201)
#6 _RootZone.runUnary (dart:async/zone.dart:1082)
#7 _Future._propagateToListeners.handleValueCallback (dart:async/future_impl.dart:488)
#8 _Future._propagateToListeners (dart:async/future_impl.dart:571)
#9 _Future._completeWithValue (dart:async/future_impl.dart:331)
#10 _Future._asyncComplete.<anonymous closure> (dart:async/future_impl.dart:393)
#11 _asyncRunCallbackLoop (dart:async/schedule_microtask.dart:41)
#12 _asyncRunCallback (dart:async/schedule_microtask.dart:48)
#13 _handleMutation (dart:html:39006)
있다 : 3030이 오류가 발생하지 않습니다.
는 여기에 당신이 당신의 CurrencyService
클래스에 @Injectable
주석을 추가 할 필요가 아는 한 여기에 지금까지 내 CurrencyService
library cerp_currency_service;
import 'dart:async';
import 'dart:convert';
import 'package:angular/angular.dart';
class CurrencyService {
Http _http;
CurrencyService (Http this._http);
...
}
, 당신은 @Injectable 주석을 추가 할 필요가 - 디의 동적 버전이 주석을 필요로하지 않습니다 있습니다. 그러나이 코드는 pub (pub 빌드 또는 pub 서버)를 통해 빌드하거나 제공 할 때 주석이 없으면 작동하지 않습니다. 동적 버전에서 어설 션 모드가 활성화되면이 주석을 시행 할 예정인 https://github.com/angular/di.dart/pull/174의 PR이 있습니다. – vicb