我尝试使用$ index使用ng-click for ng-repeat for element使用$ index,如下所示:
HTML:
<div class="elementContainer" ng-repeat="element in elements" ng-click="elementUrl($index)">
<h2>{{ element.name }}</h2>
<p><strong>{{ element.description }}</strong></p>
</div>
JS档案:
var app = angular.module('portfolioapp', []);
app.controller('MainController', ['$scope', function($scope) {
$scope.elements = [
{
"name": "1",
"description": "abcd"
},
{
"name":"2",
"description": "lmno"
},
{
"name": "3",
"description": "xyz"
}
]
$scope.elementUrl = function(index) {
if (index == 0) {
$window.location.href = 'first path';
}
else if (index == 3) {
$window.location.href = 'second path';
}
};
}]);
当我点击div(.elementContainer)时,网页不会被重定向到给定路径(本地路径)。
我在哪里做错了?
提前谢谢。< / p>
答案 0 :(得分:2)
在你的控制器中使用$window
你应该注入它
app.controller('MainController', ['$scope', '$window', function($scope,$window) {
或其他方式:使用window
,注意:没有$
符号,而不是$window