2017-03-15 53 views
2

我不明白爲什麼我無法使這個工作。使用ng-view的角度路由不起作用

我會分享相關的代碼,讓我知道如果你需要看到更多的東西。

的index.html

<div class="col-md-3"><a href="#/liberals">Liberals</a></div> 

app.js

var app = angular.module('myApp', ['ngRoute']); 
app.config(function ($routeProvider) { 
    $routeProvider. 
    when("/liberals", { 
     templateUrl: "partials/liberals.html" 
     , controller: "LiberalsController" 
    }); 
}); 

app.controller('LiberalsController', function ($scope, $http) { 
    var url = "workingURL"; /// changed function to a simple string message to test 
    $scope.message = "Hello Liberals"; 
}); 

(局部視圖)liberals.html

<h1>Hello</h1> 
    {{message}} 

PS:我不在政治仇恨網站上爲自由派或反對自由派工作!

+0

在控制檯顯示什麼? –

+0

單擊鏈接時是否收到任何錯誤消息? –

+0

控制檯是空的,當我點擊鏈接時我沒有收到任何錯誤消息 – JoSem

回答

2

從AngularJS 1.6開始,hashPrefix的默認值已更改爲!

有兩種方法可以讓你的路由與AngularJS 1.6+工作:

  • 添加hashprefix(!)到您的href的:

<a href="#!/liberals">Liberals</a>

  • 變化(刪除)使用$locationProvider的值hashPrefix

$locationProvider.hashPrefix('');

我創建了一個工作plunkr中,我使用的第二種方法: https://plnkr.co/edit/oTB6OMNNe8kF5Drl75Wn?p=preview

的提交有關該重大更改,可以發現here

+0

有它!非常感謝你! – JoSem

+0

我面臨同樣的問題,但不工作!有沒有我需要糾正的任何版本問題? – CodeWithCoffee

+0

這很難說。在https://gitter.im/angular/angular.js創建一個plunkr並ping我,這樣我就可以看看它。 –