Ubuntu改变路线上的AngularJS Angular-Route /#/ - > /#!/ links无效

时间:2016-12-09 19:44:59

标签: javascript angularjs ubuntu angular-routing

项目在本地工作正常。 但是,在将其部署到AWS Ubuntu实例后,路由似乎不起作用。 www.lewisengelart.com/#/的主页加载了www.lewisengelart.com/#!/ 如果您尝试链接,浏览器会尝试加载 www.lewisengelart.com/#!/#%2Fabout而不是 www.lewisengelart.com /#/约

再一次,这个项目在本地工作正常,我无法弄清楚是什么在ubuntu实例上绊倒它。

之前有没有人遇到过这个问题?

这是app.js,路线配置

var app = angular.module("App", ['ngRoute', 'ngAnimate']);

app.config(['$routeProvider', '$httpProvider', function($routeProvider, $httpProvider){
$httpProvider.interceptors.push(
    function($q, $location) {
    return {
        'responseError':function(rejection){
        if (rejection.status == 401){
            $location.url('/letmein');
        }
        return $q.reject(rejection);
    }
    };
});
$routeProvider
    .when('/',{
        templateUrl: 'partials/dashboard.html'
    })
    .when('/text',{
        templateUrl: 'partials/text.html',
        controller: 'textCtrl'
    })
    .when('/magnet',{
        templateUrl: 'partials/magnet.html',
        // controller: 'magnetCtrl'
    })
    .when('/gauge',{
        templateUrl: 'partials/gauge.html',
        // controller: 'gaugeCtrl'
    })
    .when('/animation',{
        templateUrl: 'partials/animation.html',
        controller: 'animationCtrl as ACtrl'
    })
    .when('/about',{
        templateUrl: 'partials/about.html',
    })
    .when('/contact',{
        templateUrl: 'partials/Contact.html',
    })


    .when('/letmein',{
        templateUrl: 'partials/loginReg.html',
        controller: 'adminCtrl'
    })
    .when('/add',{
        templateUrl: 'partials/add.html',
        controller: 'workCtrl'
    })
    .otherwise({
        redirectTo: '/'
    });

}])

主页部分链接

<div class="indexHeader col-md-3">
 <a href="/#/"><h1>Lewis Engel</h1></a>

<div class="worksBox">
  <a ng-href="/#/about"><span class="colorFive">About</span></a>
  <a href="/#/contact"><span class="colorSix">Contact</span></a>

  <a href="/#/text"><span class="colorOne">Emergent Possibilities</span></a>
  <a href="/#/animation"><span class="colorTwo">Emergence over Time</span></a>
  <a href="/#/magnet"><span class="colorThree">Magnetic Attractions</span></a>
  <a href="/#/gauge"><span class="colorFour">Meaningless Measures</span></a>
</div>

1 个答案:

答案 0 :(得分:1)

每个角度文档。

docs.angularjs.org/guide/migration#commit-aa077e8。

必须添加

$locationProvider 

appModule.config(['$locationProvider', function($locationProvider) {
  $locationProvider.hashPrefix('');
}]); 

在Angular的更新版本中覆盖新协议。