Модели в стиле магистрали в angularjs?

Я прошу прощения, если на этот вопрос уже был дан ответ в другом месте, но я не смог найти полное, очевидное (по крайней мере для меня) решение.

У меня есть опыт с идеей модели в позвоночнике. На мой взгляд, это похоже на класс в любом другом языке ООП - создайте "класс" с помощью Backbone.Model.extend() и вызывайте новый для него, когда вы хотите новый экземпляр этого класса. Если у меня есть пространство имен приложения, я могу хранить там все свои объекты и делать что-то вроде App.getAllThisOrThatTypeModel().

Это услуга в угловой? Является ли нормальная "лучшая практика" иметь множество услуг (по одной для каждого типа модели), в основном имитируя "класс" с "обслуживанием"?

Я просто пытаюсь обернуть голову вокруг наилучшего способа работы с моделями, поскольку я пытаюсь перейти от базовой линии к угловой, чтобы экспериментировать - любой совет для кого-то, мигрирующего в этом направлении, был бы очень признателен.

Спасибо!

1 ответ

В Angular модели просто POJOs (простые старые объекты javascript).

Сервисы - это что-то другое, но вы обычно получаете модели с сервисами. Рекомендуется иметь больше сервисов, поэтому вы можете использовать их во всем приложении. Также большой плюс для сервисов в том, что они могут быть протестированы модульно. И, как и все остальное в разработке программного обеспечения, всегда лучше разбить ваше приложение на маленькие модули, которые легче поддерживать, чем большие куски кода.

Вам не нужно просто имитировать ваши модели в качестве услуги. Позже вы можете добавить к ним некоторые функции и сохранить свою доменную логику внутри этих сервисов.

Я не специалист по Angular, но я надеюсь, что это поможет.

Другие вопросы по тегам