2016-10-10 4 views
0

Я хочу использовать уникальный контроллер внутри и снаружи UI-вид. Используя ng-inspector, я вижу, <div ui-view> имеет другой экземпляр myController, не знаю почему.контроллер вне UI-вид

<div class="container" ng-controller="myController"> 
    ::{{_path}} 
    <a ng-click="action()">action</a> 
    <div ui-view class="view"></div> 
</div> 

app.controller("myController",function ($scope) { 
     $scope.action = function(){ 
      $scope._path= "changed"; 
     } 
}); 

В результате этого вопроса, если я нажму на <button ng-click="action()">action</button> я вижу изменения в _path, если же кнопка находится внутри Ui ракурса, _path не меняется. Как я могу сделать эту работу?

ответ

2

Когда вы определяете состояние можно указать контроллер, который вы хотите использовать в вашем представлении следующим образом:

$stateProvider.state('myState', { 
    url: '/my-state', 
    templateUrl: '/templates/my-state.html', 
    controller: 'myController' 
}); 

Надеется, что это помогает.

+0

Это не работает ни ... – alfredopacino

+0

Можете ли вы показать мне, как вы определяете свое состояние? Кроме того, есть ли какая-либо особая причина для того, чтобы контроллер находился за пределами вашего ui-view? – Aibu

+0

ok Я понял это, я просто потерялся в 4-х вложенном виде (у одной из них была другая директива ng-controller). – alfredopacino

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