! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

addNew() 함수에대해 > Q&A | 토론

본문 바로가기

Wijmo

Q&A | 토론

ReactJS addNew() 함수에대해

페이지 정보

작성자 감자돌이 작성일 2022-10-20 14:08 조회 1,474회 댓글 4건
제품 버전 : v1
컨트롤 이름 : https://demo.grapecity.co.kr/wijmo/api/interfaces/wijmo.ieditablecollectionview.html#addnew

본문

안녕하세요 
addNew 를 눌러서 하단에 열을 추가하는데 그거를 위에다가 추가하고싶습니다 ..방법을 모르겠어요 ㅠㅠ

  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

감자돌이님의 댓글

감자돌이 작성일

아니면 밑으로 추가하고 스크롤이 그 생성된좌표로 가고싶어요,,,

GCK다이애나님의 댓글

GCK다이애나 작성일

안녕하세요 그레이프시티입니다.

addNew 메서드를 이용하여 그리드 상단에 열을 추가하는 방법에 대한 말씀은, 그리드 상단에 row를 추가하는 방법에 대한 것으로 이해하면 될까요?
정확한 답변을 드리기 위해 요청 드리며 확인 후, 회신하여 주시기 바랍니다.

감사합니다.
그레이프시티 드림

감자돌이님의 댓글의 댓글

감자돌이 작성일

네 그냥 밑으로 로우를 추가하는것입니다
1.addNew 해서 하단에 지금은 추가가 되는데  추가된곳으로 가고싶어요 지금은 바로 add한데 위로가있습니다!
let test = grid.collectionView
test.moveCurrentToLast();
test.addNew();

test.commitNew();
생성된대로안가고 그바로 위로갑니다..

하고있습니다

삭제된 댓글

감자돌이 작성일

삭제된 댓글 입니다.

1 답변

ReactJS Re: addNew() 함수에대해

추천0 이 글을 추천하셨습니다 비추천0 채택채택

페이지 정보

작성자 GCK다이애나 작성일 2022-10-20 17:34 댓글 0건

본문

안녕하세요 그레이프시티입니다.


문의 주신 내용에 대해 다음과 같이 답변 드립니다.

1. FlexGrid 컨트롤의 첫 번째 줄에 행 추가하는 방법

추가된 행의 currentPosition 속성 값을 불러온 후, moveCurrentToPosition 메서드를 사용해 추가된 행의 위치를 변경하는 코드를 구현하여 FlexGrid 컨트롤의 첫 번째 줄에 행을 추가할 수 있습니다.

아래의 코드를 참고해 보시기 바랍니다.

샘플의 18~33번 라인에서 아래의 코드를 확인해 보실 수 있습니다.

function rowAdded_Top(s) {
  // 생성된 행의 위치
  let addedIndex = s.collectionView.currentPosition;
  // 최 상단 행의 위치
  let firstIndex = 0,
    arr = s.collectionView.sourceCollection;
  // 시간 차를 두고 그리드의 collectionView 클래스 데이터를 업데이트
  setTimeout(() => {
    s.collectionView.deferUpdate(() => {
      let item = arr[addedIndex];
      arr.splice(addedIndex, 1);
      arr.splice(firstIndex, 0, item);
      s.collectionView.moveCurrentToPosition(firstIndex);
    });
  }, 100);
}

이와 관련된 API 문서 링크를 첨부해 드리오니 참고해 주시기 바랍니다.

- currentPosition API 문서

- deferUpdate API 문서

- moveCurrentToPosition API 문서


2. FlexGrid 컨트롤에 추가된 행의 위치로 뷰를 스크롤 하는 방법

위의 항목과 같이 추가된 행의 현재 위치 값을 불러온 후, scrollIntoView 메서드를 이용해 특정 위치로 뷰를 스크롤 하는 코드를 구현하여 FlexGrid 컨트롤에 추가된 행의 위치로 뷰를 스크롤 할 수 있습니다.

아래의 코드를 참고해 보시기 바랍니다.

샘플의 36~43번 라인에서 아래의 코드를 확인해 보실 수 있습니다.

function rowAdded_Scroll(s, e) {
  // 생성된 행의 위치
    let addedIndex = s.collectionView.currentPosition;
    setTimeout(() => {
      // 시간차를 두고 그리드 렌더링
      s.scrollIntoView(addedIndex, -1);
    }, 100);
}

이와 관련된 API 문서 및 데모 링크를 첨부해 드리오니 참고해 주시기 바랍니다.

- 스크롤 및 ViewRange (React) 데모

- scrollIntoView API 문서


추가적으로, allowAddNew 속성 값이 true인 FlexGrid 컨트롤의 rowAdded 이벤트에 상 기의 코드를 작성하여 문의 주신 내용을 구현할 수 있습니다.

이와 관련된 API 문서 링크를 첨부해 드리오니 참고해 주시기 바랍니다.

- allowAddNew API 문서 

- rowAdded API 문서


자세한 코드는 아래의 샘플을 참고해 보시기 바랍니다.

샘플에서 '그리드 상단에 행 추가' 버튼을 클릭해 첫번째 줄에 추가되는 행을 확인해 보실 수 있습니다. 

또한, '추가된 행의 위치로 스크롤 이동' 버튼을 클릭해 FlexGrid 컨트롤에 추가된 행의 위치로 스크롤 된 뷰를 확인해 보실 수 있습니다.


다른 궁금한 점이 생기면, 문의 주시기 바랍니다.


감사합니다.


그레이프시티 드림

댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.