[英](angularJS) make ng-click open a link on an ng-repeat
Angular的新手,很抱歉,如果已經在某個地方進行了介紹,但是我很難用簡潔的方式確切地解釋我想要什么。
目前,我有一個ng-repeat從JSON對象提取數據並創建列表。
<li ng-click="openLink()" ng-repeat="location in locations">
{{location.name}}
</li>
每個對象都有一個稱為“鏈接”的鍵,並且該鍵具有作為url的屬性。 我希望函數openLink()打開與每個對象關聯的鏈接。 我不確定如何在控制器中執行此操作。
我知道我能做
<li ng-click="openLink()" ng-repeat="location in locations">
<a ng-href="{{location.link}}">{{location.name}}</a>
</li>
但我希望能夠使用ng-click來做到這一點,以保持index.html更加整潔。 那么我該怎么做才能完成同樣的事情呢?
$scope.openLink = function() {
};
如果要重定向到的URL是角度應用程序中的路由,則需要將$ location服務注入到控制器中,然后在函數中將$ location設置為path屬性。
<li ng-click="openLink(location)" ng-repeat="location in locations">
{{location.name}}
</li>
$scope.openLink = function(location){
$location.path(location.link);
}
如果位置鏈接是完整的URL,則應將$ window服務注入到控制器中,並更改openLink函數以設置$ window.location.href。
$scope.openLink = function(location){
$window.location.href = location.link;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.