AngularJS locationProvider路由

时间:2014-05-18 01:12:03

标签: javascript angularjs

我对Angular非常陌生,我现在正在构建一些测试/虚拟应用程序,让我了解它的工作方式,并更加熟悉Angular中的SPA。但是,当我开始向我的应用添加路由并通过ng-view

加载内容时,我偶然发现了一个问题。

$ locationProvider似乎无法正常工作,因为如果我转到localhost/sdfsdf,那么我无法获取/sdfsdf,而实际上页面应该重定向到/cocktails

routes.js

var cocktailApp = angular.module('cocktailApp', ['ngRoute', 'cocktailControllers']);

cocktailApp.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {

    $routeProvider

        .when('/cocktails', {
            templateUrl: '/partials/cocktail-list.html',
            controller: 'cocktailsController'
        })

        .otherwise({
            redirectTo: '/cocktails'
        });

    $locationProvider.html5mode(true);

}]);

1 个答案:

答案 0 :(得分:0)

Angular仅识别直接粘贴在浏览器上的URL的锚点URL语法。因此,您必须尝试使用​​http://localhost/#/sdfsdf来使您的路由工作。请注意,在以前的网址中添加了锚语法/#