С моей точки зрения “Responsive” web apps.
означает тип приложения, которое обновляет Вид на изменение модели (MVC).
Угловой пользовательский интерфейс заполнен наблюдателями. Для каждой переменной, обернутой {{}}
в HTML, Angular создает новый наблюдатель, и когда мы обновляем код во время выполнения этого значения, Angular, используя digest cycle
соответственно. Или директива ng-repeat
, которая создает отдельную область для каждого элемента списка и добавляет наблюдателя.
С другой стороны, в чистом Javascript мне нужно найти свой элемент по id и обновить его вручную.
Рассмотрим следующий пример в Fiddle
HTML
<ul>
<li ng-click="loadGeo()">click 1</li>
</ul>
<ul> <pre>
data: {{data|json}}
</pre>
</ul>
JS
var app = angular.module('myModule', ['ngResource']);
app.controller('fessCntrl', function ($scope, Data) {
$scope.data = false;
$scope.loadGeo = function() {
Data.query()
.then(function (result) {
$scope.data = result.data.results[0];
}, function (result) {
alert("Error: No data returned");
});
}
});
app.factory('Data', ['$http', '$q', function ($http, $q) {
var address = 'Singapore, SG, Singapore, 153 Bukit Batok Street 1';
var URL = 'http://maps.googleapis.com/maps/api/geocode/json?address=' + address + '&sensor=true';
var factory = {
query: function() {
var data = $http({
method: 'GET',
url: URL
});
var deferred = $q.defer();
deferred.resolve(data);
return deferred.promise;
}
}
return factory;
}]);
На старте мы имеем пустой data
: $scope.data = false;
Мы нажимаем кнопку, мы получаем данные Geo с завода и заполняем data
с выходом Geo. Наш графический интерфейс обновляется без дополнительного кода.
Этот подход я бы назвал “Responsive” web app
Я предлагаю вам прочитать этот великий пост, написанный Джошем Дэвид Миллер:
how-do-i-think-in-angularjs-if-i-have-a-jquery-background
Похоже, автор курса просто спутать с словечки. Насколько мне известно, отзывчивость используется только для описания адаптивного дизайна. Он отличается от Ajax. – Quentin
Да, это то же самое, что мы делали в течение последних 10 лет с помощью Ajax. – Clive
Я полагаю, что можно использовать использование AJAX как «отзывчивого» при эффективном использовании с точки зрения UX в том смысле, что при вызове операции пользователю не нужно сидеть и ждать перезагрузки страницы до пользователь может сделать что-нибудь еще. Даже если операция занимает несколько секунд, остальная часть пользовательского интерфейса может «реагировать» на другие взаимодействия. Но да, все еще простой старый AJAX просто обернут интерфейсом фреймворка. И я согласен, что это потенциально вводящее в заблуждение использование терминологии. – David