Показать сообщение отдельно
  #170 (permalink)  
Старый 10.12.2013, 16:43
Кандидат Javascript-наук
Посмотреть профиль Найти все сообщения от Maxmaxmaximus4
 
Регистрация: 08.12.2013
Сообщений: 142

cyber, нет, контроллеры так не вызываются, я добавил возможность описывать их не так

ui.controller('User',function(){ })

а просто в window, просто как бонус, ну это куда проще для демонстраций =), он просто смотрит если такого контроллера нету в модуле то поискать в window =) мелочь а приятно. Контроллеры по идеологии не должны использовать замыкания из вне и обращаться к чему-то из вне, все что им нужно они должны запрашивать в виде сервисов, которые именуются со знака бакс, $http например сервис для общения с сервером. Мы просто пишем в коде контроллера $http и у нас автоматически туда подключается сервис $http. (Чтобы идешка не ругалась мы можем написать у контроллера параметр $http)


сервисы, как ты понял, тоже создаются оч просто

ui.service('$http',function(){

    return {} // возвращаем обьект сервиса
    //все сервисы синглтоны кстати, так что то что тут вернется, будет для всех общее
})



например вот:

<script src='//mychamber.ru/build/ui.js'></script>


<button controller="User" click="say()">say</button>


<script>
  function User() {
    say = function() { $ololo('РААБОТАЕТ11111') }
  }

  ui.service('$ololo', function() {
    return function(text) { alert(text) }
  })
</script>

Последний раз редактировалось Maxmaxmaximus4, 10.12.2013 в 17:01.
Ответить с цитированием