2014-04-01 56 views
0

首先,讓我展現一段僞代碼來說明功能我想實現如何將href綁定到函數結果?

<a data-ng-href="{{getPath('InsuredProfileSummary',{insuredId:insured.insuredId})}}">Summary</a> 

基本上,我有定義,這樣我可以通過名稱來指代他們的路線,例如

{ 
    name:'InsuredProfileSummary', 
    url: '/insureds/:insuredId/profile/summary', 
    config: { 
       templateUrl: 'app/insured/profile/summary/inProfileSummary.html', 
       reloadOnSearch: false, 
       settings:{} 
      } 
} 

和我有一個服務,給定的路線,建立網址。因此,在我的示例中,它將用值替換insuredId,並且可以爲受保配置文件獲取正確的URL。這在控制器中正常工作,如此代碼

$scope.closeEditModal(vm.insured); 
var summaryPath = routesSvc.getPath("InsuredProfileSummary", { insuredId: vm.insured.insuredId }); 
$location.path(summaryPath); 

我的問題是如何在html模板中實現此綁定。是否有一種本地方式將函數的結果綁定到屬性的值,還是必須編寫自己的指令?

+0

在html中的ng元素裏面去掉括號,它們不是必需的,你可以調用ng-click =「something()」的元素,例如寫作$ scope.something – mautrok

回答

0

在這裏沒有看到問題。

http://jsfiddle.net/STEVER/2YkeH/

$scope.genUrl = function(){ 
     return 'http://js4.it' 
    } 

也許我沒有得到這個問題的想法。

如果你想異步更新它,它是更好地結合的典範 - http://jsfiddle.net/STEVER/2YkeH/6/

+0

你的例子工程,但是,我認爲我有一個問題,數據加載和鏈接不會得到重新評估。 – epitka

+0

我想我明白了你的觀點。更新了答案 –

0

好吧,我有一個錯誤,我在道路缺一個「#」,這就是爲什麼代碼沒有工作。

相關問題