nhn / tui.grid

🍞🔡 The Powerful Component to Display and Edit Data. Experience the Ultimate Data Transformer!
http://ui.toast.com/tui-grid/
MIT License
2.42k stars 398 forks source link

그리드 통신시 INT값 처리 #260

Closed ldk-hub closed 5 years ago

ldk-hub commented 5 years ago

Version

java 1.9, SpringBoot, mybatis

Development Environment

  1. 그리드 내 백엔드로 데이터 전송시 String으로만 전달하는 것으로 확인되었습니다. Int값으로 변환하여 백엔드로 전달하는 방법이 있는지 궁금합니다.

  2. 데이터 미입력 시 해당 셀에 색상이 변환되는 경고 관련하여 알럿창이나 해당 미입력정보에대한 스캔기능 옵션이있는지궁금합니다.

Current Behavior

Expected Behavior

dongwoo-kim commented 5 years ago

1. number 타입

기존 데이터가 number인 경우에는 그대로 number 타입으로 전달됩니다. 다만, 그리드의 편집 모드를 이용해 입력한 값들은 string 으로 저장되는데요, 이 경우 validation.dataTypenumber로 지정하면 숫자 타입으로 변환해서 저장됩니다.

var grid = new tui.Grid({
  // ...
  columns: [
    {
      title: 'score',
      name: 'score',
      validation: {
        dataType: 'number'
      }
    }
  ]
});

2. 데이터 미입력 확인

현재 내부에서 유효성 체크를 할 때 발생하는 이벤트는 없습니다. 대신 onBeforeChange 등의 이벤트에서 validate 메소드를 실행해서 검증 결과를 받아오는 방식으로 처리할 수 있을 것 같습니다.

ldk-hub commented 5 years ago

오오 ....신속한답변에 정말감사드립니다.알려주신정보를 토대로 개발에반영하도록하겠습니다. 정말감사합니다 !! 새해복많이받으세요.

2019년 1월 30일 (수) 오후 8:08에 김동우 notifications@github.com님이 작성:

  1. number 타입

기존 데이터가 number인 경우에는 그대로 number 타입으로 전달됩니다. 다만, 그리드의 편집 모드를 이용해 입력한 값들은 string 으로 저장되는데요, 이 경우 validation.dataType 을 number로 지정하면 숫자 타입으로 변환해서 저장됩니다.

var grid = new tui.Grid({ // ... columns: [ { title: 'score', name: 'score', validation: { dataType: 'number' } } ] });

  1. 데이터 미입력 확인

현재 내부에서 유효성 체크를 할 때 발생하는 이벤트는 없습니다. 대신 onBeforeChange 등의 이벤트에서 validate http://nhnent.github.io/tui.grid/latest/Grid#validate 메소드를 실행해서 검증 결과를 받아오는 방식으로 처리할 수 있을 것 같습니다.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/nhnent/tui.grid/issues/260#issuecomment-458905547, or mute the thread https://github.com/notifications/unsubscribe-auth/ALpMxBgnVamtIq-Q3mxhGiMPUvFYQ9oTks5vIX04gaJpZM4aXDo_ .

dongwoo-kim commented 5 years ago

감사합니다 :) 새해 복 많이 받으세요!

ldk-hub commented 5 years ago

안녕하세요. TUI GRID 재문의 드립니다.

  1. 혹시 셀데이터 개별 기준 말고 한번에 그리드 전체를 유효성검사할 방법은없을까요 ㅠㅠ?
  2. number 타입...
{
  title : '용량',
  align: 'center',
  name : 'fc_capacity',
  editOptions : {
    type : 'text',
    maxLength: 7,
    useViewMode : true
  },
  validation: {
    dataType: 'number' // <----------혹시여기에 누메릭도가능한가요?
  }
},

이렇게 기입하였지만 실제 백엔드에서 받을때는 String 으로 넘어오는것을 확인하였습니다. 혹시 이렇게하는게아닌지 확인부탁드려요..ㅠㅠ

dongwoo-kim commented 5 years ago
  1. validate 메소드를 사용하면 됩니다.
  2. 동일한 옵션으로 확인했는데, number 타입으로 전송되고 있습니다. 서버에 어떤 식으로 데이터를 전송하는지를 몰라서, 그이상은 확인이 어렵네요;
ldk-hub commented 5 years ago

아.. 친절한답변감사드립니다. validate로 진행했었는데 버전차이로 안됬었던 문제였네요

3.5로 바꾸고나서 잘되는거 확인했습니다.

감사합니다!

dongwoo-kim commented 5 years ago

아, 제가 버전 문제를 생각 못했군요. validate 메소드 결과가 UI에 표시되지 않는 버그가 있었는데, 3.5.0에서 수정되었습니다.

이미 해결하셨다니 다행이네요. 감사합니다 :)