이 지시문을 가지고 있으며 링크 기능보다 위쪽으로 스크롤하면 함수가 호출됩니다. 링크 기능에서 배열의 4 개 항목을 연결할 것입니다. 그러나보기의 영향은 없습니다. 배열의 전체 항목이 여전히 표시됩니다. 따라서 내 질문에 내가 할 수있는 splices arrayentries 브라우저보기에서 제거하려면 무엇입니까?지시어의 속성 변경 어레이로 AngularJS 지시문
(function() {
'use strict';
angular
.module('myProject.common')
.directive('asScrollTop', asScrollTop);
function asScrollTop() {
var directive = {
restrict: 'A',
scope: { chatMessagesOfUser: '=chatMessagesOfUser' },
link: link
};
return directive;
////////////
function link(scope, element, attr) {
console.log(element);
element.on('scroll', function() {
if(element[0].scrollTop <= 0) {
scope.chatMessagesOfUser.splice(1, 4);
}
});
}
}
})();
지시어의 사용법은 다음과 같이이다 : 당신이 지침에서 바인드 변수를 수정하면
<div data-as-scroll-top data-chat-messages-of-user="vm.chatMessagesOfUser">
</div>
문제가있는 Plnkr을 만들었지 만 (http://plnkr.co/edit/fc2it2ZN7Bjxs9EJRJB1) 내가 무엇을하려고하는지 몰랐습니다. 너의 반복은 언제가? 사용자가 목록 컨테이너를 스크롤하기 시작할 때 목록을 연결하려고합니까? 그렇다면 그 목적은 무엇입니까? – mcranston18
ng-repeat는 브라우저보기에 목록을 표시하며 사용자가 배열의 일부 항목보다 맨 위에 스크롤하면 삭제해야합니다. 따라서 ng-repeat 전에 항목을 삭제하지 마십시오. 고마워요 – quma
plnkr의 HTML이 앱의 HTML과 일치하도록 위의 plnkr을 편집 할 수 있습니까? 나는 당신이 당신의 목록에서 반복하고있는 곳을 아직도 분명하지 않다. – mcranston18