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

selector를 사용하면서 Merge를 할 경우 에러 가 납니다. > Q&A | 토론

본문 바로가기

Wijmo

Q&A | 토론

ReactJS selector를 사용하면서 Merge를 할 경우 에러 가 납니다.

페이지 정보

작성자 토끼바람 작성일 2022-06-13 15:40 조회 1,794회 댓글 0건
제품 버전 : 5.20211.794
컨트롤 이름 : flexgrid

본문

Merge를 하고 데이터를 바인딩한 후에 행을 추가 할 경우 에러가 발생하는데

해결 방법이 없나요?



const initSiteItemMappingGrid=(sender)=>{

~~

// selector 설정 (checkbox)

gridSiteItemMappingSelector = new Selector(sender, {});

gridSiteItemMappingSelector.column = sender.rowHeaders.columns[0];

~~

}

const addrow =()=>{

setGridSiteItemMappingData([...gridSiteItemMappingData, defaultInfoSiteItemMapping]);

}


그리드 설정

<FlexGrid 

headersVisibility="All"                // All None, Column Row

keyActionTab="Cycle"                                    // 탭 이동 기능

stickyHeaders={true}                                    // 헤더 고정

mergeManager={new GridUserMerge()}                  // 셀 병합처리

selectionMode={3}   


columnGroups={gridSiteIemMappingColGroup}               // 그리드 포멧

itemsSource={gridSiteItemMappingData}                   // 바인딩할 데이터

initialized={initSiteItemMappingGrid}                   // 그리드 초기 이벤트 및 등록 처리

onItemsSourceChanged = {onSiteItemMappingSourceChanged} // 소스 변경 (조회시)

allowSorting={0}

>

<FlexGridFilter initialized={initSiteItemMappingFilter} showSortButtons={false}/>

</FlexGrid>

---------------------- 에러 내용---------------------------

es5-esm.js:14 Uncaught TypeError: Cannot read properties of undefined (reading 'isSelected')

    at GridPanel.getSelectedState (es5-esm.js:14:1)

    at GridPanel._renderCell (es5-esm.js:14:1)

    at GridPanel._renderRow (es5-esm.js:14:1)

    at GridPanel._updateContent (es5-esm.js:14:1)

    at FlexGrid._updateContent (es5-esm.js:14:1)

    at FlexGrid.refreshCells (es5-esm.js:14:1)

    at _SelectionHandler.select (es5-esm.js:14:1)

    at _SelectionHandler._adjustSelection (es5-esm.js:14:1)

    at FlexGrid._syncSelection (es5-esm.js:14:1)

    at FlexGrid._cvCurrentChanged (es5-esm.js:14:1)

GridPanel.getSelectedState @ es5-esm.js:14

GridPanel._renderCell @ es5-esm.js:14

GridPanel._renderRow @ es5-esm.js:14

GridPanel._updateContent @ es5-esm.js:14

FlexGrid._updateContent @ es5-esm.js:14

FlexGrid.refreshCells @ es5-esm.js:14

_SelectionHandler.select @ es5-esm.js:14

_SelectionHandler._adjustSelection @ es5-esm.js:14

FlexGrid._syncSelection @ es5-esm.js:14

FlexGrid._cvCurrentChanged @ es5-esm.js:14

(anonymous) @ es5-esm.js:14

Event.raise @ es5-esm.js:14

CollectionView.onCurrentChanged @ es5-esm.js:14

CollectionView.moveCurrentToPosition @ es5-esm.js:14

CollectionView.moveCurrentTo @ es5-esm.js:14

CollectionView.addNew @ es5-esm.js:14

onAddSiteItemMapingExecute @ SiteItemProductMng.js:309

onAddSiteItemMapingConfirm @ SiteItemProductMng.js:302

callCallback @ react-dom.development.js:3945

invokeGuardedCallbackDev @ react-dom.development.js:3994

invokeGuardedCallback @ react-dom.development.js:4056

invokeGuardedCallbackAndCatchFirstError @ react-dom.development.js:4070

executeDispatch @ react-dom.development.js:8243

processDispatchQueueItemsInOrder @ react-dom.development.js:8275

processDispatchQueue @ react-dom.development.js:8288

dispatchEventsForPlugins @ react-dom.development.js:8299

(anonymous) @ react-dom.development.js:8508

batchedEventUpdates$1 @ react-dom.development.js:22396

batchedEventUpdates @ react-dom.development.js:3745

dispatchEventForPluginEventSystem @ react-dom.development.js:8507

attemptToDispatchEvent @ react-dom.development.js:6005

dispatchEvent @ react-dom.development.js:5924

unstable_runWithPriority @ scheduler.development.js:468

runWithPriority$1 @ react-dom.development.js:11276

discreteUpdates$1 @ react-dom.development.js:22413

discreteUpdates @ react-dom.development.js:3756

dispatchDiscreteEvent @ react-dom.development.js:5889

Show 7 more frames

react-dom.development.js:4091 Uncaught TypeError: Cannot read properties of undefined (reading 'isSelected')

    at GridPanel.getSelectedState (es5-esm.js:14:1)

    at GridPanel._renderCell (es5-esm.js:14:1)

    at GridPanel._renderRow (es5-esm.js:14:1)

    at GridPanel._updateContent (es5-esm.js:14:1)

    at FlexGrid._updateContent (es5-esm.js:14:1)

    at FlexGrid.refreshCells (es5-esm.js:14:1)

    at _SelectionHandler.select (es5-esm.js:14:1)

    at _SelectionHandler._adjustSelection (es5-esm.js:14:1)

    at FlexGrid._syncSelection (es5-esm.js:14:1)

    at FlexGrid._cvCurrentChanged (es5-esm.js:14:1)





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

댓글목록

등록된 댓글이 없습니다.

1 답변

ReactJS Re: selector를 사용하면서 Merge를 할 경우 에러 가 납니다.

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

페이지 정보

작성자 GCK루시 작성일 2022-06-15 10:53 댓글 0건

본문

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


문의 주신 내용과 관련하여 먼저 해당 에러의 경우 렌더링하기 전에 동작하는 경우에 종종 발생합니다. 공유해주신 내용을 바탕으로 확인했을 때, 새 행을 바인딩 후 렌더링하기 전에 해당 행의 속성을 접근하여 이슈가 발생하는 것으로 추측됩니다. 따라서 새 행을 추가 한 다음 일정 시간 후에 실행하게 하는 setTimeout 함수를 호출하여 해당 함수 내에서 행의 속성을 접근하는 방식으로 구현해보시기 바랍니다.


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


감사합니다.

그레이프시티 드림

댓글목록

등록된 댓글이 없습니다.

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