AngularJS Accordion是对函数

时间:2015-11-20 11:19:55

标签: javascript angularjs

如果它是我的任务列表的当前元素,我正试图打开手风琴的一个元素。这是我的HTML:

<div ng-controller="taskController">
<uib-accordion close-others="oneAtATime">
            <uib-accordion-group heading="{{task.id}}: {{task.subject}}"  ng-repeat="task in datafromRedmine.issues" class="priority{{task.priority.id}}">
                <div id="midRow">

                    {{task.tracker.name}}-{{task.project.name}}

                </div>
(...)
</uib-accordion-group>

    </uib-accordion>
</div>

谁使用具有此功能的角度控制器:

$scope.isTheCurrent = function (id){
        return(id == $scope.Currentid);
}

我正在尝试在ng-repeat旁边添加一个is-open =“{{isTheCurrent(task.id)}}”,但是控制台说

Error: [$parse:syntax] Syntax Error: Token '{' invalid key at column 2 of the expression [{{isTheCurrent(task.id)}}] starting at [{isTheCurrent(task.id)}}].

如果来自ng-repeat的task.id与我在$ scope.currentId上保存的task.id相同,我怎么能返回一个布尔检查?

1 个答案:

答案 0 :(得分:0)

ng-repeat指令实现了一些特殊属性。其中一个是$index。您可以在函数调用中使用它。例如:

<div ng-show="isTheCurrent(datafromRedmine.issues[$index].id)">
     This is current the issue<br>
     {{task}}
</div>

有关$index特殊属性的详细信息,请阅读AngularJS ng-repeat API Docs