摆脱#后的角度Js url导航

时间:2015-12-22 22:28:27

标签: angularjs url url-routing base

阅读this后,我能够修复网址中的#问题。没有URL就可以正常工作。

在index.html中

  <base href="/app-name/">

我的网址:

http://localhost:7001/app-name

在应用基本网址之前我有

http://localhost:7001/app-name/#/home

1)当我在浏览器中输入此内容时,网址如何更改为http://localhost:7001/app-name/home

使用#时,我能够更改并导航到应用程序的差异级别。但是,在index.html中应用base后,我无法执行此操作,浏览器会抛出404.有关如何使其工作的任何建议吗?

这是我的导航页面

<div class='navbar-header'>
    <a class='navbar-brand' href="home"><img alt='img' src="appName/images/logo.PNG" type="image/png" height="30"></a>
    <div class="navbar-header">
        <a class="navbar-brand" href="home"><b>App - Name</b></a>
    </div>
</div>

<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
    <ul class="nav navbar-nav navbar-right">
        <li><a href="home"> <span class="glyphicon glyphicon-home"></span> Home</a></li>
        <li><a href="logs"> <span class="glyphicon glyphicon-list-alt"></span> YYYYYYYYY </a></li>
        <li><a href="info"> <span class="glyphicon glyphicon-hand-up"></span> XXXXXXXX</a></li>
    </ul>
</div>

路由器看起来像这样。

  'use strict';

appName.config(function($routeProvider, $locationProvider) {

    $routeProvider

    .when('/home', {
        templateUrl : 'appName/models/scheduler/home.html',
        controller  : 'mainController'
    })

    .when('/logs', {
        templateUrl : 'appName/models/logs/logs.html',
        controller  : 'logsController'
    })

    .when('/info', {
        templateUrl : 'appName/models/quick_info/info.html',
        controller  : 'yyyyController'
    })

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

 //   $locationProvider.html5Mode(true);

    $locationProvider.html5Mode({
          enabled: true,
          requireBase: false
        });

感谢您花时间研究这个问题。

0 个答案:

没有答案