2015-12-08 4 views
0

Я пытаюсь создать форму, которая работает следующим образом:Ионные значение возврата к предыдущему виду

Главный вид имеет список всех полей например 1. Merchant, 2. Сумма 3. Дата

форма довольно длинная. Вместо того, чтобы делать многоступенчатую форму, я надеюсь сделать следующее:

  1. Нажмите на Merchant, чтобы открыть выбранный вид продавца и выберите продавца, чтобы вернуть значение в основное представление.
  2. Нажмите на количество, чтобы ввести вид суммы. После ввода значения верните значение на главный вид
  3. Нажмите на дату, чтобы ввести дату. Как только дата будет выбрана, верните int в основной вид.

Любые советы?

ответ

3

Вы можете использовать услугу для обмена данными между контроллерами, связанными с каждым видом.

app.service('YourService', function($q) { 
    return { 
    details: 
     { 
     name: 'Merchant_1',   //Some default values 
     amount: 100, 
     date: "" 
     } 
    , 
    getDetails: function() { 
     return this.details 
    }, 
    setDetails: function(name,amount,date) { 
     this.details.name = name; 
     this.details.amount = amount; 
     this.details.date = date; 
    }, 
    setName: function(name){ 
     this.details.name = name; 
    } 
    } 
}); 

и в ваших контроллерах вводят «YourService». Напр. контроллер для просмотра продавца.

app.controller('MerchantViewCtrl', function($scope, YourService) { 
     var onSelect = function(MerchantName){ 
      YourService.setName(MerchantName); 
     } 
}); 

Выберите вид Merchant

<select ng-click="onSelect(merchant.name)" ng-options="merchant in merchantsList"> 
</select> 

и в главном контроллере представления

app.controller('MainViewCtrl', function($scope, YourService) { 
     var details = YourService.getDetails(); 
     $scope.name = details.name; 
     $scope.amount = details.amount; 
     $scope.date = details.date; 
}); 
Смежные вопросы