여기 Angular-Dart가 무한 루프에서 중단되는 것으로 보이는 것의 실제 버전을 제거했습니다. 나는 stackoverflow에 대한 다른 관련 질문 각각을 보았지만 어떤 진전을 이루지 못했습니다. 이것은 작동해야만하는 사소한 구현처럼 보입니다. 나는 무엇을 이해하지 못합니까?
A : :
library comp_a;
import 'package:angular/angular.dart';
@NgComponent(
selector: 'comp-a',
template: '<div id="compa"></div>',
publishAs: 'cmp'
)
class CompA {
NgModel _ngModel;
CompA(this._ngModel);
}
B :
library comp_b;
import 'package:angular/angular.dart';
@NgComponent(
selector: 'comp-b',
template: '<div id="compb"></div>',
publishAs: 'cmp'
)
class CompB {
NgModel _ngModel;
CompB(this._ngModel);
}
내 main()
다트 파일이 동일하게 지루 :
나는 두 개의 구성 요소 (A comp_a과 comp_b)가
library main;
import 'package:angular/angular.dart';
import 'package:loop/component/comp_a.dart';
import 'package:loop/component/comp_b.dart';
class CompModule extends Module {
CompModule() {
type(CompA);
type(CompB);
}
}
void main() {
ngBootstrap(module: new CompModule());
}
<!DOCTYPE html>
<html ng-app>
<body>
<comp-a ng-model="[1]"></comp-a>
<comp-b ng-model="[2]"></comp-b>
<script type="application/dart" src="loop.dart"></script>
<script src="packages/browser/dart.js"></script>
</body>
</html>
내가 모두 <comp-a>...
및 <comp-b>...
이있는 경우
ng-model
없는 것들 (콘솔에서 즉, 오류) 위대한 작동하지 :명
으로 내 HTML 파일입니다.
5 $digest() iterations reached. Aborting!
Watchers fired in the last 3 iterations: [["ng-model=[1]","ng-model=[2]"],["ng-model=[1]","ng-model=[2]"],["ng-model=[1]","ng-model=[2]"]]
STACKTRACE:
#0 Scope._digestWhileDirtyLoop (package:angular/core/scope.dart:526:5)
#1 Scope.$digest (package:angular/core/scope.dart:475:28)
#2 _autoDigestOnTurnDone (package:angular/core/scope.dart:153:14)
#3 _rootRun (dart:async/zone.dart:688)
#4 _ZoneDelegate.run (dart:async/zone.dart:417)
#5 NgZone._finishTurn (package:angular/core/zone.dart:91:21)
#6 NgZone._onRunBase (package:angular/core/zone.dart:56:43)
#7 _onRun (package:angular/core/zone.dart:61:15)
#8 _ZoneDelegate.run (dart:async/zone.dart:417)
#9 _CustomizedZone.run (dart:async/zone.dart:627)
#10 NgZone.run (package:angular/core/zone.dart:143:27)
#11 ngBootstrap (package:angular/bootstrap.dart:87:18)
#12 main (http://127.0.0.1:3030/loop/web/loop.dart:16:14)
감사 : 둘 다 ng-model
있는 경우에만 나는 ng-model
와 하나 <comp-a>...
또는 <comp-b>...
이있는 경우, 일이 잘 작동 ... 내가 이것을 얻을입니다!