$ location.path()转到错误的网址

时间:2015-05-17 22:35:11

标签: javascript angularjs

我有这个html标记,当我Inspect Element时显示正常:

<tr style="cursor: pointer" ng-repeat="i in games" ng-click="go('/admin/{{i._id}}')">

渲染时如下:

<tr style="cursor: pointer" ng-repeat="i in games" ng-click="go('/admin/5550d868c5242fb3299a2604')" class="ng-scope">

对于javascript我有这个:

$scope.go = function(path){
    $location.path(path);
};

单击该行时,应该转到此处:

/admin/5550d868c5242fb3299a2604

但它改为:

/admin/%7B%7Bi._id%7D%7D

Which evaluates to: {{i._id}}

我做错了什么?

2 个答案:

答案 0 :(得分:2)

那是因为ng-click的参数本身就是一个表达式,不需要在那里使用花括号

ng-click="go('/admin/' + i._id)">

答案 1 :(得分:1)

就像我在评论中建议的那样,我认为确实有效,并且在另一个答案中被采纳了:

ng-click="go('/admin/' + i._id)"

表达式必须来自引号