javascript - ejemplos - Utilizando HTML5 pushstate en angular.js
angularjs tutorial (1)
Estoy tratando de implementar pushstate html5 en lugar de la navegación # utilizada por Angularjs. Intenté buscar una respuesta en google y también probé en la sala de chat de IRC angular sin suerte todavía.
Este es mi controllers.js
:
function PhoneListCtrl($scope, $http) {
$http.get(''phones/phones.json'').success(function(data) {
$scope.phones = data;
});
}
function PhoneDetailCtrl($scope, $routeParams) {
$scope.phoneId = $routeParams.phoneId;
}
function greetCntr($scope, $window) {
$scope.greet = function() {
$("#modal").slideDown();
}
}
app.js
angular.module(''phoneapp'', []).
config([''$routeProvider'', function($routeProvider){
$routeProvider.
when(''/phones'', {
templateUrl: ''partials/phone-list.html'',
controller: PhoneListCtrl
}).
when(''/phones/:phoneId'', {
templateUrl: ''partials/phone-detail.html'',
controller: PhoneDetailCtrl
}).
otherwise({
redirectTo: ''/phones''
});
}])
Inyecte $ locationProvider en su configuración y establezca $locationProvider.html5Mode(true)
.
http://docs.angularjs.org/api/ng.$locationProvider
Ejemplo simple:
JS:
myApp.config(function($routeProvider, $locationProvider) {
$locationProvider.html5Mode(true);
$routeProvider
.when(''/page1'', { template: ''page1.html'', controller: ''Page1Ctrl'' })
.when(''/page2'', { template: ''page2.html'', controller: ''Page2Ctrl'' })
});
HTML:
<a href="/page1">Page 1</a> | <a href="/page2">Page 2</a>