2016-01-04 2 views
1

Я не могу использовать один и тот же контроллер? У меня есть:Угловое множество использует тот же контроллер

<div id="players" class="table" ng-controller="PersonsController as base"> 
    <h3 class="tableHeader">Players</h2> 
    <ul class="tableList"> 
     <li ng-repeat="person in base.persons" value="1">{{person.name}} </li>         

    </ul> 

    <select name="repeatSelect" id="repeatSelect" > 
       <option ng-repeat="person in base.persons" value="1">          {{person.name}}  </option> 
      </select> 
    </div> 

Эта работа, но когда я снова использую PersonController, не работает. Пример:

<div id="players" class="table" ng-controller="PersonsController as base"> 
    <h3 class="tableHeader">Players</h2> 
    <ul class="tableList"> 
     <li ng-repeat="person in base.persons" value="1">{{person.name}} {{person.surname}}</li> 

    </ul> 

<select name="repeatSelect" id="repeatSelect" > 
      <option ng-repeat="person in base.persons" value="1">{{person.name}}</option> 
      </select> 
</div> 

<div ng-controller="PersonsController as base"> 

<select name="repeatSelectaa" id="repeatSelectaa" > 
      <option ng-repeat="person in base.persons" value="1">{{person.name}}</option> 
      </select> 

</div> 

Кто-нибудь знает почему?

+0

A note Примечание. Вы пытаетесь закрыть элемент 'h3' элементом' h2'. – nikhil

+0

Вы используете его снова в том же представлении/странице? Вы видите ошибки скрипта в консоли браузера? – Shyju

+0

Можете ли вы объяснить, что не работает? – Eftakhar

ответ

0

Вы можете, но вы должны дать другое имя для каждого с синтаксисом as, в противном случае он будет сталкиваться друг с другом (так как они живут на одной и той же родительской области)

так использовать:

ng-controller="PersonsController as base" 

и:

ng-controller="PersonsController as base2" 
+0

I Try;/nothing – qqla333

0

Мой контроллер:

var app = angular.module('app', []); 
var persons = []; 
var titles=[]; 
var test=[]; 
var urlBase = 'http://localhost:1337/players'; 
var urlTitles ='http://localhost:1337/teams'; 
var urlAddPerson= ''; 
app.controller('PersonsController', ['$http',function ($http) { 
    self=this; 


    $http.get(urlBase).success(function (data) { 
     self.persons = data; 
     persons=data; 
     console.log("loaded " + self.persons); 
    }); 


}]); 

Я получаю данные с сервера. Сервер работает нормально.