AngularJS始终路由到main

AngularJS始终路由到main,angularjs,routing,ngroute,Angularjs,Routing,Ngroute,我有下一个代码: var app = angular.module('ForclazApp', ['ngRoute']); app.config(function($routeProvider){ $routeProvider .when("/", { templateUrl: "partials/header.html" }) .when("/motos", { templateUrl:

我有下一个代码:

var app = angular.module('ForclazApp', ['ngRoute']);

app.config(function($routeProvider){
    $routeProvider
        .when("/", {
            templateUrl: "partials/header.html"
        })
        .when("/motos", {
            templateUrl: "partials/motos.html"
        })
        .when("/repuestos", {
            templateUrl: "partials/repuestos.html"
        })
        .when("/taller", {
            templateUrl: "partials/taller.html"
        })
        .when("/blog", {
            templateUrl: "partials/blog.html"
        })
        .when("/contacto", {
            templateUrl: "partials/contacto.html"
        })
        .otherwise({
            redirectTo: '/'
        });
});
无论您单击哪个链接,它总是重定向到header.html模板。我使用的是AngularJS 1.6.3。 控制台日志没有显示任何错误

菜单的链接:

<ul class="nav navbar-nav navbar-right">
    <li class="nav-li"><a href="#/" class="nav-link">Inicio </a></li>
    <li class="nav-li"><a href="#/motos" class="nav-link">Motos </a></li>
    <li class="nav-li"><a href="#/repuestos" class="nav-link">Repuestos </a></li>
    <li class="nav-li"><a href="#/taller" class="nav-link">Taller </a></li>
    <li class="nav-li"><a href="#/blog" class="nav-link">Blog </a></li>
    <li class="nav-li"><a href="#/contacto" class="nav-link">Contacto </a></li>
</ul>
基本上是说,如果其他选项都不匹配,则转到route/。在你的情况下,这是主要的。您的
。当(…
检查与您希望的方式不匹配时

在html中。从所有链接中删除/。因此它应该如下所示:

<li class="nav-li"><a href="#contacto" class="nav-link">Contacto </a></li>
  • 这将符合你想要的方式

    基本上是说,如果其他选项都不匹配,则转到route/。在您的情况下,这是main.your
    。当(…
    检查与您希望的方式不匹配时

    在html中。从所有链接中删除/。因此它应该如下所示:

    <li class="nav-li"><a href="#contacto" class="nav-link">Contacto </a></li>
    

  • 这将与您希望的方式匹配。

    您应该删除所有
    。我认为您应该使用
    ui路由器
    ,而不是
    ng路由器
    。这样对您更好


    您应该删除所有
    #
    。我认为您应该使用
    ui-router
    而不是
    ng-router
    。这对您来说更好


    我删除了.otherwise语句,并更改了href,删除了“/”字符,但继续相同的操作problem@MarceloForclaz原因是因为你的url,可能在你的url中有类似于
    #!
    的东西,对吗?是的!这就是问题所在!(!#)我已经将AngularJS的版本更改为1.5.x,它工作得非常好。谢谢大家。我想如果我将链接中的“#”改为“#!”也可以。我删除了。否则的话,我修改了href,删除了“/”字符,但还是一样的problem@MarceloForclaz原因是因为你的url,可能在你的url中有类似于
    #!
    的东西,对吗?是的!这就是问题所在!(!#)我已经将AngularJS的版本更改为1.5.x,它工作得非常好。谢谢大家。我认为如果我将链接中的“#”改为“#!”,它也会工作得很好。