【发布时间】:2014-10-27 05:05:02
【问题描述】:
我正在使用动态填充的手风琴。
<accordion-group ng-repeat="data in dataList" is-open="isAccordionOpen(data.dataName)">
<accordion-heading>
<span ng-click="openedAccordionGroup(data.dataName)" class="accordionSpan"><b>{{data.dataName}}</b>
</span>
</accordion-heading>
</accordion-group>
这里 dataList 在 15 秒后继续变化,这意味着我在 15 秒的常规间隔后填充 dataList。所以我需要坚持最后一个打开的手风琴组。 DataList 可能非常庞大。所以我无法解析和修改它以避免在 is-open 属性中调用方法。
在 js 文件中,有以下代码。
$scope.openedAccordionName = '';
$scope.isAccordionOpen = function(name){
return $scope.openedAccordionName === name;
};
$scope.openedAccordionGroup = function(name) {
$scope.openedAccordionName = name;
};
当我运行它时,它给出了 javascript 错误。
Error: [$compile:nonassign] Expression 'isAccordionOpen(data.dataName)' used with directive 'accordionGroup' is non-assignable!
上面的代码有什么问题?
【问题讨论】:
标签: javascript angularjs angularjs-scope angularjs-ng-repeat angular-ui-bootstrap