Сравните MVVM WPF и MVC/MVVM AngularJS

MVVM Architure в WPF кажется понятным.

  1. Модель в шаблоне MVVM инкапсулирует бизнес-логику и данные (это конкретный класс, отвечающий за бизнес-логин и данные)
  2. Ответственность за представление состоит в том, чтобы определить структуру и внешний вид того, что пользователь видит на экране.(реализуется с помощью страницы XAML)
  3. Модель представления в шаблоне MVVM инкапсулирует логику представления и данные для представления (это определенный класс, который отвечает за вход в систему представления)

Теперь давайте сравним его с шаблоном Angularjs Design MVC/MVVM.

  1. Представление является DOM(HTML).

  2. ViewModel это:

объект $scope можно рассматривать как ViewModel, который оформляется функцией, которую мы называем Controller.

И здесь возникает вопрос

Что такое модель в этом шаблоне проектирования AngularJS?

Я понял, что, возможно, Службы должны быть моделью? может кто-нибудь дать мне понять?

Кстати, я хочу использовать ES6 Class в качестве модели, как мы говорили в шаблоне MVFM Design WPF, где модель - это Class.

1 ответ

Модели могут поступать от служб или заводов, например:

angular.module("myModule")
       .factory("urlFactory", function() {
           return {
               myModelSource: 'http://localhost:38324/api/myModel'
           }
       })
       .service("dataSource", ["$http", "urlFactory", function($http, urlFactory) {
           return {
               getMyModel: function() {
                   return $http.get(urlFactory.myModelSource);
               }
           }
       }])
       .controller("myController", ["$scope", "dataSource", function($scope, dataSource) {
           dataSource.getMyModel().then(function(myModel) {
               $scope.viewModel = myModel;
           });
       }]);
Другие вопросы по тегам