Skip to main content

Filter data with input field

params.key
blocks:
  - type: http
    method: GET
    fetchFn: |
      const q = name || 'all'
      return [
        { id: 1, keyword: q, result: 'mock-1' },
        { id: 2, keyword: q, result: 'mock-2' }
      ]
    params:
      - key: name
        placeholder: 검색어 입력

Set input format and component

params.format , dropdown
params:
  - key: date
    format: date
  - key: select
    dropdown:
      - Brut
      - Rosé Brut

Filter multiple blocks

pages.params 여러개의 블록을 하나의 필터로 조회할 수 있습니다.
params:
  - key: name
    placeholder: 검색어
blocks:
  - type: http
    method: GET
    fetchFn: |
      const q = name?.trim() || 'all'
      return [{ id: 1, keyword: q, result: 'srv-1' }]
  - type: http
    method: GET
    fetchFn: |
      // 동일 name 파라미터 재사용
      const q = name?.trim() || 'all'
      return [{ id: 2, keyword: q, result: 'srv-2' }]

Search table in client-level

searchOptions 조회한 테이블 데이터에서 빠르게 내용을 검색합니다.
type: http
searchOptions:
  enabled: true

Filter column in client-level

columns.[name].filterOptions 특정 컬럼의 내용을 빠르게 찾습니다.
type: http
columns:
  name:
    filterOptions:
      enabled: true

Paginate table in client-level

paginationOptions 클라이언트 레벨에서 페이지네이션을 활성화합니다.
type: http
paginationOptions:
  enabled: true

Sorting table

sortOptions 테이블 데이터의 기본 정렬값을 설정합니다.
blocks:
  - type: http
    method: GET
    fetchFn: |
      return [
        { name: 'hey', created_at: '2025-07-07' },
        { name: 'good day', created_at: '2025-07-08' },
        { name: 'long time no see', created_at: '2025-07-17' },
      ]
    sortOptions:
      enabled: true
      initialSortBy:
        field: created_at
        type: desc # desc, asc

Group input filter

params.group 관련 입력 필드를 서로 묶어줍니다.
params:
  - key: name
    group: 1
  - key: email
    group: 2
  - key: phone
    group: 2

Styling filter group

formOptions.display 필터 스타일을 바꿀 수 있습니다.
params:
  - key: name
    group: 1
  - key: email
    group: 2
  - key: phone
    group: 2
formOptions:
  display: col # inline, form
  firstLabelWidth: 120px
  labelWidth: 120px