2015-05-18 4 views
0

У меня возникла проблема при создании мобильного приложения с угловым JS при передаче данных для следующей страницы с опцией выбора на первой странице. На следующей странице ничего не отображается только пустой экран. Для более подробной информации, пожалуйста, проверьте my plunker, чтобы узнать, что не так из моего сценария. Его мои «script.js» из моего plunker:Не удается передать данные между страницами с выбором диапазона

angular.module('ex', [ 
    'ngRoute', 
    'ngStorage', 
]) 

.config(['$routeProvider', 
    function($routeProvider) { 
    $routeProvider 
     .when('/view1', { 
     templateUrl: 'view1.html', 
     controller: 'View1Ctrl', 
     }) 
     .when('/view2', { 
     templateUrl: 'view2.html', 
     controller: 'View2Ctrl', 
     }) 
     .otherwise('/view1'); 
    } 
]) 

.controller('View1Ctrl', ['$scope', '$location', '$localStorage', 
    function($scope, $location, $localStorage) { 
    $scope.view1 = $localStorage.view1 = { 
     text: '', 
     number: 0, 
     type: '', 
     discount: '', 
    }; 

    $scope.producttype = [{ 
     product: "A", 
     value: 7900000, 
     discount1: 5612, 
     discount2: 79000 
    }, { 
     product: "B", 
     value: 10200000, 
     discount1: 5612, 
     discount2: 79000 
    }, { 
     product: "C", 
     value: 11000000, 
     discount1: 5612, 
     discount2: 79000 
    }, { 
     product: "D", 
     value: 7300000, 
     discount1: 5612, 
     discount2: 79000 
    }, { 
     product: "E", 
     value: 10000000, 
     discount1: 5612, 
     potongan2: 79000 
    }, { 
     product: "F", 
     value: 11200000, 
     discount1: 5612, 
     discount2: 79000 
    }, ]; 

    $scope.submit = function() { 
     $location.path('/view2'); 
    }; 
    } 
]) 

.controller('View2Ctrl', ['$scope', '$localStorage', 
    function($scope, $localStorage) { 
    // I want show discount list based on "Discount Type" like "discount1" for "good" and "discount2" for "decent" 
    if (view1.type == "Good") { 
     view1.selection = view1.type.discount1; 
     console.log(view1.discount); 
    } else { 
     view1.selection = view1.type.discount2; 
     console.log(view1.discount); 
    } 

    $scope.view1 = $localStorage.view1; 
    } 
]) 

Кроме этого, Как я могу понять, чтобы показать список скидок на базе «Скидка типа» как «discount1» за «хорошо» и «discount2» для " достойный "на следующей странице (view2.html)?

Большое вам спасибо.

ответ

1

Смотрите обновленный plunk здесь

Mailny, я hadded в том случае, если представить сохранение в LocalStorage,

$scope.submit = function() { 
    $localStorage.view1 = $scope.view1; 
    $location.path('/view2'); 
}; 

и изменил несколько вещей в View2, чтобы указать на $ scope.view1

if ($scope.view1.type == "Good") { 
    $scope.view1.selection = $scope.view1.type.discount1; 
    console.log($scope.view1.discount); 
} else { 
    $scope.view1.selection = $scope.view1.type.discount2; 
    console.log($scope.view1.discount); 
} 
+0

Благодарим за помощь, но {{view1.selection}} просто покажут пустой экран на view2.html. Не могли бы вы еще раз проверить? – user3077416

+0

@ user3077416 Вы проверили мой обновленный плункер? – aorfevre

+0

Вы уже забыли добавить 'view1' в '

' стать '' и я уже тестировал свой сценарий и работал. Потому что мой другой сценарий забывает добавить функцию «$ localstorage». Огромное спасибо – user3077416

Смежные вопросы