1
데이터 행을 각도로 표시하는 간단한 앱이 있습니다. 컨트롤러에 데이터가 처음로드 될 때, 행이 내 rows
배열에 추가 된 것과 같은 순서로 나타나길 원합니다. 따라서 orderBy
속성은 처음에는 빈 문자열로 설정됩니다. 열 머리글을 클릭하면 orderBy
속성을 적절한 값으로 설정해야합니다.Chrome의 각도 맞춤 반복 주문
여기 내 피들입니다. http://jsfiddle.net/fLjMR/3/. 여기
function ctrl($scope)
{
var rows = [];
for(var i = 10;i < 30;i++)
{
rows.push({name: "Fake Name " + i, email: "fakeemail" + i + "@gmail.com"});
}
$scope.rows = rows;
$scope.orderBy = "";
};
내 HTML입니다 : 여기
내 JS의 내가 IE와 FF에서이 작업을 수행 할 때 행이 intially가 추가 된 순서대로 표시
<table ng-app ng-controller="ctrl">
<thead>
<th><a ng-click="orderBy='name'">Name</a></th>
<th><a ng-click="orderBy='email'">Email</a></th>
</thead>
<tbody>
<tr ng-repeat="row in rows | orderBy:[orderBy]">
<td>{{row.name}}</td>
<td>{{row.email}}</td>
</tr>
</tbody>
</table>
,하지만 난 할 때 크롬에서는 중간 항목 (이 경우 행 # 20)이 목록의 시작 부분에 나타납니다. 왜 이런거야?
허. 글쎄, 당신이 뭘 알아, 고쳐. 나는 당신이 대괄호를 제거 할 수 있다는 것을 알고 있었지만, 나중에 몇 가지 추가 매개 변수를 추가 할 계획이었습니다. 왜 괄호가 달라질까요? – Dave
각도 광원을 살짝 들여다 보았습니다. orderByFilter는 정렬 조건 자 (콜론 뒤에 오는 것)가 거짓 값이고 정렬되지 않은 배열을 반환하면 단락합니다. 빈 문자열은 거짓 값입니다. 빈 문자열을 포함하는 배열은 위조 값이 아니므로 빈 문자열을 술어로 사용하여 정렬을 시도합니다. –
좋은 물건. 나는 당신이 그것을 못살게 굴 것 같아! 고마워요! – Dave