2013-06-02 114 views
2

我設置了一個非常簡單的AngularJS應用程序,並遇到了一個小問題,但令人沮喪的問題。下面是使用$ routeProvider示例應用程序:AngularJS - templateUrl路徑附加到href路徑

angular.module('thought', [], function($routeProvider, $locationProvider) { 
    $routeProvider. 
     when('/thought', { 
      templateUrl: 'partials/thought/posts.html', 
      controller: ThoughtCntl 
     }). 
     when('/thought/edit/:id', { 
      templateUrl: 'partials/thought/edit.html', 
      controller: EditCntl 
     }).otherwise({ 
      redirectTo: '/thought' 
     }); 

    $locationProvider.html5Mode(true); 
}); 

下面是posts.html的內容:

<div> 
<button>Create</button> 

<div> 
    <h3>Posts</h3> 
    <ul> 
     <li ng-repeat="post in publishedPosts"> 
      <a href="/thought/edit/{{post._id}}">{{post.title}}</a> 
     </li> 
    </ul> 
</div> 
</div> 

當我瀏覽到/思想,posts.html負載與相應的數據內容。該鏈接應該包含'href = localhost:8080/thought/edit/1234'。但是,當我點擊鏈接時,它會嘗試從'localhost:8080/thought/edit/partials/thought/edit.html'加載模板。 templateUrl路徑被附加到href路徑。我相信一些簡單的配置是錯誤的,但我找不到它。任何想法我應該看看?

謝謝!

+0

你嘗試設置以 「/」 一個templateUrl?也許它是相對於當前網址設置的。 –

回答

2

使用<base>標籤:

<base href="/" /> 
+0

完美,謝謝! – Geoff