我是一个新手AngularJS开发者,以下是我的经历:
var app = angular.module('myapp', []);
app.controller('ProductCtrl', ['$scope', '$sce', function ($scope, $sce) {
$scope.products = myapp.products;
$scope.pager = $sce.trustAsHtml(myapp.pager);
$scope.getProducts = function($event) {
$event.preventDefault();
var $link = $($event.target);
var url = $event.target.href;
$.getJSON(url, function(response) {
$scope.$apply(function() {
$scope.products = response.products;
$scope.pager = $sce.trustAsHtml(response.pager);
});
history.pushState(response, "Index", url);
});
};
}]);
$(window).bind("popstate", function (e) {
console.log(e.originalEvent.state);// I need scope here
});
您可以看到,点击将调用getProducts
方法,该方法将更新$scope.products和$scope.pager。我还在执行history.pushState
。现在,我想要的是,每当用户单击返回按钮时,我需要再次更新$scope.products
和$scope.pager
。这是否可能使用AngularJS?