2016-11-09 2 views
0

Ich arbeite an ionischen Projekt, ich habe 2 Ansichten erste Ansicht: Der Benutzer geben Sie einen Wert (ganze Zahl) dann klicken Sie auf eine Schaltfläche, um mich zu sehen 2 Zweite Ansicht: Displays mir Liste der Zahlen von 1 auf den Wert eingegeben der Benutzer

das ist mein Eingang:

<input type="text" placeholder="input a value " ng-model="val"> 

und dies ist die Ctrl für die Ansicht 1

.controller('homeCtrl', function($rootScope, $scope) { 
$scope.val; 
$rootScope.value= $scope.val; 
}) 

dies view 2 Liste

<ion-list> 
    <ion-item ng-repeat='num in list' item="num"> {{num}} 
    </ion-item> 
</ion-list> 

und dies ist die Abfrage

.controller('listCtrl', function($rootScope, $scope) { 

var num = $rootScope.value; 
$scope.list=[]; 
    for(var i=1; i<num ; i++) 
    { 
    $scope.list.push(i); 
    } 

}) 

das Problem ist in der ersten Steuerung, diese Linie

$rootScope.value= $scope.val; 

die $ rootScope nehmen nicht die Wert von $ scope.val wenn ich einen Testwert wie diesen setze $ rootScope.value = 8;

die Liste arbeiten, sonst tut es nicht

wo sind das Problem bitte Ich habe keine Fehler dank

Antwort

2

Sie den aktuellen Wert von $ scope.val Zuordnung

Was Sie tun müssen, ist ein $ Uhr hinzufügen für Änderungen ‚val‘ zu sehen, wie so:

$scope.$watch('val', function(newval) { 
    $rootScope.value = newval; 
}); 
+0

I stateparams verwendet und es wored dank viel – ca2264

+0

Auf die Gefahr, wie ein Punkte-Yuppie klingen :), wenn diese Antwort für Sie richtig war, können Sie es als die Antwort markieren? – Robba

Verwandte Themen