基本代码:
<tr class="" ng-repeat="row in resultOfFiltering">
<td class="{{result[1]}}" ng-repeat="result in createTableBody(row)">{{ result[0] }}</td>
</tr>
当观察通知在搜索输入中发生更改或者选择了新的基本源时,resultOfFiltering会更改,因为应该创建新的表体
执行createTableBody以在嵌套字段之后进行搜索,并在tr中创建正确的td顺序和数量。
问题:我想我知道问题是什么,问题是所有结果都会引用createTableBody函数的最后一次执行,所以问题是如何为每个函数执行创建一个单独的作用域?
createTableBody函数
this.createTableBody = function(obj){
var headers = $rS._headers,
giveBack;
if(obj.headers !== headers.length) {
var num = obj.headers;
if(!angular.isArray(headers[num])){
giveBack = obj[headers[num]];
}else{
giveBack = that.giveBackNestedValues(obj, headers[num]);
obj.headers += 1;
return giveBack;
}
obj.headers += 1;
return [giveBack, headers[num] ];
} else {
return [undefined,'HideThisRow'];
}
};
我尝试在函数(){return something}中使用wrapp返回以创建uniq范围,但它没有修复我的问题。