如何保持基地href在位置?

时间:2016-01-07 20:38:45

标签: angularjs ngroute angularjs-ng-route

我想在我的网站上实现基于AngularJS的管理员后端。

假设后端位于/admin并且我设置了<base href="/admin">,我将路由设置为如下

angular
    .module('myApp', ['ngRoute']);
    .controller('MainController', function ($scope) {})
    .controller('DashboardController', function ($scope) {});
    .config(['$routeProvider', '$locationProvider',
        function ($routeProvider, $locationProvider) {
            $routeProvider
                .when('/dashboard', {
                    templateUrl: '/admin/static/app/dashboard/dashboard.html',
                    controller: 'DashboardController'
                });
            $locationProvider.html5Mode(true);
        }]);

我的导航看起来像

<ul id="navigation">
    <li><a href="/">Home</a></li>
    <li><a href="/dashboard">Dashboard</a></li>
</div>

现在我在/admin/并点击Dashboard它会将我的窗口位置设置为/dashboard而不是/admin/dashboard - 这就是我的意思base href

有没有办法让base href保持在该位置?

1 个答案:

答案 0 :(得分:0)

你应该尝试这样做

<a href="#/dashboard">Dashboard</a>

#使其成为相对的,并且注册的路由支持开箱即用。 通常你不会在angularjs中使用href。你宁可放一些ng-click元素,并使用$ location.path('dashboard')

来使用$ location服务