패키지, 저장소 및 앱 카테고리 검색

pluto_grid 표지
패키지 상세v8.1.0

pluto_grid

PlutoGrid는 데스크톱 및 웹에서 키보드로 제어할 수 있는 데이터 그리드입니다. 물론 안드로이드와 IOS에서도 잘 작동합니다. (DataGrid, DataTable, 데이터 그리드, 데이터 테이블, 스티키)

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
3.2만
좋아요
1.1천
Pub 점수
160

패키지 설치

flutter pub add pluto_grid

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

PlutoGrid는 데스크톱 및 웹 플랫폼에서 키보드 탐색을 지원하면서도 모바일 기기에서도 완전한 기능을 유지하는 Flutter용 다목적 데이터 그리드 컴포넌트입니다. 고정 헤더, 정렬, 필터링과 같은 기능을 갖춘 반응형이고 사용자 정의 가능한 테이블 인터페이스를 제공하여 구조화된 데이터를 표시하기에 이상적입니다. 다양한 플랫폼에서 접근성 있고 상호작용이 풍부한 데이터 표시 솔루션을 찾는 개발자를 위해 설계되었으며, 직관적인 컨트롤과 부드러운 성능을 통해 사용자 경험을 향상시킵니다.

사용 사례

  • 웹 애플리케이션에서 대규모 데이터 세트 표시
  • 데스크탑 사용자를 위한 접근성 있는 데이터 테이블 만들기
  • 인터랙티브 그리드를 사용하여 관리자 대시보드 만들기
  • 데이터 테이블에서 스티키 헤더 구현하기
  • 데이터 그리드에서 키보드 탐색 사용

주요 기능

  • 데스크톱 및 웹에서의 키보드 탐색 지원
  • 스티키 헤더 및 열
  • 크로스 플랫폼 호환성 (Android, iOS, Web, macOS, Windows, Linux)
  • 사용자 정의 가능한 셀 렌더링
  • 내장된 정렬 및 필터링
  • 모든 화면 크기에 대응하는 반응형 디자인

적합한 대상

  • 데이터 집약적인 웹 앱을 개발하는 개발자
  • 접근성과 키보드 상호작용을 우선시하는 팀
  • 유연한 테이블 컴포넌트가 필요한 UI 디자이너
  • 스티키 헤더와 고급 데이터 처리가 필요한 애플리케이션
  • 일관된 UI를 갖춘 여러 플랫폼을 대상으로 하는 프로젝트

고려 사항

  • 복잡한 레이아웃을 위해 추가 스타일링이 필요할 수 있습니다
  • 매우 큰 데이터 세트를 사용할 때 성능 모니터링이 필요합니다
  • 성숙한 대안에 비해 문서가 제한적
  • 특수 사용 사례를 위해 키보드 탐색을 맞춤 설정해야 할 수 있습니다
  • 매우 높은 주파수의 데이터 업데이트에 최적화되지 않음

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

PlutoGrid for flutter - v8.1.0

Awesome Flutter codecov License: MIT


PlutoGrid is a DataGrid that can be operated with the keyboard in various situations such as moving cells.
It is developed with priority on the web and desktop.
Improvements such as UI on mobile are being considered.
If you comment on an issue, mobile improvements can be made quickly.


Demo Web

You can try out various functions and usage methods right away.
All features provide example code.


Pub.Dev

Check out how to install from the official distribution site.


Documentation

The documentation has more details.


ChangeLog

Please note the changes when changing the version of PlutoGrid you are using.


Issue

Report any questions or errors.


Packages

PlutoGridExport
This package can export the metadata of PlutoGrid as CSV or PDF.


Screenshots
Change the color of the rows or make the cells look the way you want them.

PlutoGrid Normal


Date type input can be easily selected by pop-up and keyboard.

PlutoGrid Select Popup


The selection type column can be easily selected using a pop-up and keyboard.

PlutoGrid Select Date


Group columns by desired depth.

PlutoGrid Cell renderer


Grid can be expressed in dark mode or a combination of desired colors. Also, freeze the column, move it by dragging, or adjust the size.

PlutoGrid Multi select


Example

Generate the data to be used in the grid.


List<PlutoColumn> columns = [

  /// Text Column definition
  PlutoColumn(
    title: 'text column',
    field: 'text_field',
    type: PlutoColumnType.text(),
  ),

  /// Number Column definition
  PlutoColumn(
    title: 'number column',
    field: 'number_field',
    type: PlutoColumnType.number(),
  ),

  /// Select Column definition
  PlutoColumn(
    title: 'select column',
    field: 'select_field',
    type: PlutoColumnType.select(['item1', 'item2', 'item3']),
  ),

  /// Datetime Column definition
  PlutoColumn(
    title: 'date column',
    field: 'date_field',
    type: PlutoColumnType.date(),
  ),

  /// Time Column definition
  PlutoColumn(
    title: 'time column',
    field: 'time_field',
    type: PlutoColumnType.time(),
  ),
];

List<PlutoRow> rows = [
  PlutoRow(
    cells: {
      'text_field': PlutoCell(value: 'Text cell value1'),
      'number_field': PlutoCell(value: 2020),
      'select_field': PlutoCell(value: 'item1'),
      'date_field': PlutoCell(value: '2020-08-06'),
      'time_field': PlutoCell(value: '12:30'),
    },
  ),
  PlutoRow(
    cells: {
      'text_field': PlutoCell(value: 'Text cell value2'),
      'number_field': PlutoCell(value: 2021),
      'select_field': PlutoCell(value: 'item2'),
      'date_field': PlutoCell(value: '2020-08-07'),
      'time_field': PlutoCell(value: '18:45'),
    },
  ),
  PlutoRow(
    cells: {
      'text_field': PlutoCell(value: 'Text cell value3'),
      'number_field': PlutoCell(value: 2022),
      'select_field': PlutoCell(value: 'item3'),
      'date_field': PlutoCell(value: '2020-08-08'),
      'time_field': PlutoCell(value: '23:59'),
    },
  ),
];

Create a grid with the data created above.

  @override
Widget build(BuildContext context) {
  return Scaffold(
    appBar: AppBar(
      title: const Text('PlutoGrid Demo'),
    ),
    body: Container(
      padding: const EdgeInsets.all(30),
      child: PlutoGrid(
          columns: columns,
          rows: rows,
          onChanged: (PlutoGridOnChangedEvent event) {
            print(event);
          },
          onLoaded: (PlutoGridOnLoadedEvent event) {
            print(event);
          }
      ),
    ),
  );
}

Flutter version compatible
Flutter PlutoGrid
3.38.0 or higher 8.1.0 or higher
3.19.0 or higher 8.0.0 or higher
3.10.0 or higher 7.0.0 or higher
3.7.0 or higher 6.0.0 or higher
3.3.0 or higher 5.0.6 or higher
3.0.0 or higher 3.0.0-0.pre or higher
2.5.0 or higher 2.5.0 or higher

For other versions, contact the issue


Related packages

develop packages that make it easy to develop admin pages or CMS with Flutter.


Donate to this project

Buy me a coffee


Jetbrains provides a free license

IDE license support

카테고리

의존성

의존성 목록 3 개

소스 저장소

이 패키지를 사용하는 프로젝트