Для отладки и разработки я использую область за пределами ng-view
, показывающую, что я просто хочу увидеть. Он отлично работает , но мне пришлось создать и сервис и контроллер для него. Моя проблема в том, что разделение работы между ними довольно запутанно, поэтому я хотел бы избавиться от одного из них.Могу ли я создать однорядный угловой контроллер?
Я не против сдачи DebugCtrl
в $rootScope
или позволяя контролировать DebugSvc
$scope
(это Hacky, но это только для взлома, так что?), Но первое, что я должен сделать контроллер к синглтону и относительно последнего, я понятия не имею, как получить $scope
.
Я знаю, что контроллеры не являются одиночными. Их не может быть, так как может быть много независимых зон, управляемых разными экземплярами одного и того же контроллера. Но в моем случае я знаю, что мне нужен только один экземпляр. Учитывая комментарии, я думаю, мне нужны оба, но мне также нужны четкие критерии, как разделить работу между ними.
1 Конечно, я использую отладчик и выхожу на консоль тоже, но такая площадка для отладки прекрасно их дополняет. Она также имеет кнопки для заполнения форм с помощью отладки данных, периодической CSS перегрузки и т.д.
Возможный дубликат [Что такое жизненный цикл контроллера AngularJS?] (Http://stackoverflow.com/questions/16094940/what-is-the-lifecycle-of-an-angularjs-controller) – Makoto
IMO это не действительно хорошая причина для объединения обязанностей двух типов. На самом деле, как раз наоборот. Если обязанности не ясны, то это часто указывает на необходимость большего разделения обязанностей. Однако, чтобы ответить на ваш вопрос, контроллеры не предназначались для создания в виде синглтонов, поэтому я бы не стал его пробовать, если бы я был вами. Если у вас есть совместное государство, держите его в службе. – Igor
Вышеупомянутая ссылка отвечает на вопрос, может ли контроллер быть одноточечным. Это не так. – Makoto