Итак, я сделал этот Plunker, который хорошо работает как демо: http://plnkr.co/edit/Zm9d6zHhrnqDlnJsSZ1I?p=preview. Это простая разбивка на страницы с двумя атрибутами атрибутов, которые содержат состояние модели и некоторое конфигурационное состояние. Я хочу закончить с директивой завода, как это (или что-то объяснить, как рассуждать по-разному):Разделение контроллера директивы на более мелкие части
angular.module('mnPagination').factory(function(model, config) {
return {
model: model,
config: config
}
})
Моя проблема с текущим plunker является то, что приложение слой и слой директивы не похожи друг на друга. Поскольку у меня есть только одно приложение, я могу использовать фабрики в качестве поставщиков одиночных данных. Это действительно хорошо!
Но внутри директивы я не могу использовать какой-либо провайдер, так как это будет синглтон. Сфера действия - это новый объект для каждого объявленного экземпляра, так что это единственное место, где я могу поместить любой код состояния, который должен содержаться в директиве.
Директивы должны быть без гражданства?
Еще один мета-вопрос: Я единственный, кто волнуется об этом?
Это моя вторая попытка SO, и никто на facebook или на работе действительно это в MVVM/MVC или директивы с изолированной областью.
Я Лэй, приди, будь моим Люком!
Мне интересно, может ли помочь вам получить доступ к родителям областей из контроллера директивы? Не уверен, насколько это было бы чисто. – user1441287
Я пытаюсь понять ваш вопрос. Разделение контроллера на более мелкие части: это о создании «помощников контролера» или «частей функциональности» для объединения вместе? Можете ли вы немного разобраться в этом (мне любопытно, это может быть полезно для меня). – Bernard
@ user1441287: Доступ к родительскому охвату для меня был бы непротиворечивым. Я хочу как можно большего разделения, поэтому я могу легко заменить код и легче понять свой код, не глядя в родительскую область. –