我编写了一个相当简单的应用程序,并将其放在github上,以便可以在网上查看它。但是网址似乎有问题(或其他问题!)。我设法使其在localhost上运行的唯一方法是在导航栏中使用符号,并在我的config函数中使用常规网址(不使用):

<ul class="nav navbar-nav navbar-right">
    <li ng-class="{ active: isActive('/')}"><a href="/#/">Home</a></li>
    <li ng-class="{ active: isActive('/games')}"><a href="/#/games">Games</a></li>
    <li ng-class="{ active: isActive('/contact')}"><a href="/#/contact">Contact</a></li>
</ul>


app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
    $routeProvider
    .when('/', {
        controller: 'Posts',
        templateUrl: 'controllers/posts.html'
    })
    .when('/games', {
        controller: 'Games',
        templateUrl: 'controllers/games.html'
    })
    .when('/contact', {
        controller: 'Games',
        templateUrl: 'controllers/contact.html'
    })
    .when('/:id', {
        controller: 'Games',
        templateUrl: 'controllers/reviews.html'
    })
    .otherwise({
        redirectTo: '/'
    });
}]);

但是它在github.io上不起作用,只有第一页可以。当我单击games按钮时,它显示



虽然我当然将所有html文件都保存在controllers文件夹中。

最佳答案

您的href中有一个额外的/
删除前一个,因为它指示要转到域根

<a href="/#/contact">Contact</a>

应该:
<a href="#/contact">Contact</a>

这样,您在href中只剩下一个哈希

10-06 03:58