как обращаться к внешнему контроллеру если внутри в таким же именем
короче я думаю вот на этом остановимся:
<div ui:controller="ParentList = List('parent')">
<div ui:controller="List('child')">
{name} // child
{List.name} // child
(ParentList.name) // parent
</div>
</div>
function List( newName ) {
name = newName
}
И вводим негласное правило, имена контроллеров должны быть с заглавной буквы. Тут нет такого что вот конструктор с заглавной а сам инстанс с маленькой, нет больше ни какого инстанса, контроллер разворачиваетя в текущий скоуп.
то есть вот контроллер
function List() {
name = 'list'
}
и когда мы напишем так
<div ui:controller="List"></div>
то текущий скоуп у нас станет таким
var scope = {}
scope.name = 'list';
scope.List = scope;
--------
напишем так
<div ui:controller="Ololo = List"></div>
скоуп станет таким
var scope = {}
scope.name = 'list';
scope.List = scope;
scope.Ololo = scope;
короче все это типа ОПАСННО что перекроется ВНЕШНЕЕ бла бла бла, но это не так, с этим мы тоже поборимся