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

패키지 상세v2.3.0

search_page

앱에서 사용자 지정 검색 경험을 빠르고 쉽게 구축하는 방법

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
910
좋아요
197
Pub 점수
150

패키지 설치

flutter pub add search_page

패키지 개요

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

개발자가 애플리케이션 내에서 사용자 정의 가능한 검색 경험을 빠르게 만들 수 있도록 해주는 플러터 패키지입니다. 실시간 필터링, 디바운스 처리 및 데이터 소스와의 간편한 통합을 위한 내장된 지원을 제공합니다. 단순성과 성능을 고려하여 설계되어 봇팅 코드를 줄이고 UI 커스터마이징의 유연성을 제공합니다. 모든 주요 플랫폼에서 호환되므로 일관된 검색 인터페이스를 원하는 크로스플랫폼 앱에 이상적입니다.

사용 사례

  • 리스트에서 실시간 검색 구현
  • 최소한의 노력으로 맞춤 검색 UI 만들기
  • 동적 데이터 소스와 검색 통합
  • 웹 및 모바일을 위한 반응형 검색 바 만들기
  • 전자상거래 앱에 검색 기능 추가하기
  • 즉시 결과를 통해 사용자 경험 향상

주요 기능

  • 디바운스를 사용한 실시간 검색
  • 사용자 정의 가능한 검색 UI 컴포넌트
  • 크로스 플랫폼 호환성
  • 어떤 데이터 소스와도 쉽게 통합
  • 비동기 검색 작업 지원
  • 가볍고 성능이 뛰어남

적합한 대상

  • 검색 중심 앱을 개발하는 개발자
  • 빠른 프로토타이핑을 우선시하는 팀
  • 다중 플랫폼에서 일관된 검색이 필요한 앱
  • UX 향상에 집중하는 프론트엔드 개발자
  • Flutter 초보자들이 검색 기능 탐색 중

고려 사항

  • 복잡한 필터링 로직을 위해 수동 설정이 필요합니다
  • 기본 사용자 정의를 넘어서는 내장 스타일 옵션이 제한적입니다
  • 대규모 데이터셋을 위해 추가 상태 관리가 필요할 수 있습니다
  • 매우 높은 빈도의 검색 쿼리에 최적화되지 않음
  • 외부 데이터 소스 구현에 따라 다름

원본 README

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

Search Page

Package style: very good analysis Build Patreon License

Fast and easy way to build a custom search experience in you app.

This package aims to provide a simple way to build a search view, using available resources from the Flutter framework. It uses SearchDelegate as its fondation, in oder to build a 'material' experience.

One of the special features of this package is the filter parameter. It's a very simple way to filter out items inside a list, using different string representations.

Also, you can customize suggestion and on-error widgets, provide custom search filters, change AppBar's theme...

Example

Here is a example on how to use this package. You'd need to call the SearchPage class using the showSearch function built in.

If you want to take a deeper look at the example, take a look at the example folder provided with the project.

FloatingActionButton(
  child: Icon(Icons.search),
  tooltip: 'Search people',
  onPressed: () => showSearch(
    context: context,
    delegate: SearchPage<Person>(
      items: people,
      searchLabel: 'Search people',
      suggestion: Center(
        child: Text('Filter people by name, surname or age'),
      ),
      failure: Center(
        child: Text('No person found :('),
      ),
      filter: (person) => [
        person.name,
        person.surname,
        person.age.toString(),
      ],
      builder: (person) => ListTile(
        title: Text(person.name),
        subtitle: Text(person.surname),
        trailing: Text('${person.age} yo'),
      ),
    ),
  ),
),

Getting Started

This project is a starting point for a Dart package, a library module containing code that can be shared easily across multiple Flutter or Dart projects.

For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Built with

Authors

License

This project is licensed under the GNU GPL v3 License - see the LICENSE file for details.

카테고리

소스 저장소

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