2016-01-20 3 views
0

это мой кодКак передать значение с одной страницы на другую в angular.js

<md-whiteframe class="whiteframe" layout-align="center space-around" 
    ng-repeat="scdlr in day" ng-click="showDetails(data.name)" flex> 
    {{scdlr.name}}<br> 
    {{scdlr.creative_id}}<br> 
    {{scdlr.status}} 
</md-whiteframe> 

и контроллер

$scope.showDetails = function(e) 
    { 

     $mdDialog.show({ 
      templateUrl  : 'app/main/apps/vendors/scheduler/dialogs/detail.html', 
      targetEvent  : e, 
      clickOutsideToClose: true 
     }); 


    } 

, когда я нажимаю whiteframe всплывающее страницы подробно .html подходит. все, что я хочу, это data.name (параметр, переданный в ng-click) подробно. html.is это возможно, я новичок в angular.js

ответ

0

Использование locals -{object=}: Объект, содержащий пары ключ/значение. Клавиши будут использоваться в качестве имен значений для ввода в контроллер. Например, locals: {three: 3} - будет вводить три в контроллер со значением.

Reference

+0

Если я поставил аргумент контроллера как контроллер: «EventDetailController», он говорит «Ошибка: [ng: areq] Аргумент« EventDetailController »не является функцией, получившей неопределенное значение. как исправить это @ Nidhin T T –

+0

Не понял! Поделитесь кодом, который вы пробовали. –

0

Используйте угловые сервисы или заводские установки и введите название соответствующей услуги или фабрику в контроллер detail.html для использования данных по всему миру.

Посетите Официальный сайт: https://docs.angularjs.org/guide/services

0

Привет при использовании $ mdDialog, если вы хотите отправить данные, а затем использовать местные жители приписывают для передачи данных.

$scope.showDetails = function(e) { 
         $mdDialog.show({ 
          templateUrl  : 'app/main/apps/vendors/scheduler/dialogs/detail.html', 
          targetEvent  : e, 
          clickOutsideToClose: true, 
          locals: { 
            items: $scope.data // data you want to pass 
          } 
         }); 
        } 

    } 

Для получения дополнительной информации посетите: Angular js $mdDialog documentation

+0

, если я поставил аргумент контроллера как контроллер: «EventDetailController», он говорит: Ошибка: [ng: areq] Аргумент «EventDetailController» не является функцией, получившей неопределенное значение. как исправить это @ rroxysam –

1

Вы можете сохранить data.name в rootscope:

$scope.showDetails = function(name){ 
$rootScope.name=name; 
//your code 
} 

и в HTML вы можете получить доступ к нему через {{$ root.name}}. rootScope будет доступен везде, и он будет рассматриваться как глобальная переменная.

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