Ответ 1
Вы смешиваете контроллер как синтаксис и используете область. Посмотрите мой плункер на http://plnkr.co/qpcKJZx4jovC6YdzBd6J, и вы увидите пример.
Основное изменение заключается в том, что при использовании контроллера в качестве синтаксиса вам необходимо привязать переменные к этому.
app.controller('MyController', function($http) {
var vm = this;
vm.mydata = [];
$http.get(URI)
.then(function(result) {
console.log(result);
vm.mydata = result.data;
});
Выберите один способ публикации ваших данных просмотра и придерживайтесь его, либо как контроллер, либо $scope.
Вы заметите, что верхний "данные с сервера" больше не работает в плункере, потому что я не изменил его, чтобы использовать контроллер в качестве синтаксиса.