Lynx

Reaction Button

사용자가 콘텐츠에 대한 반응을 표현할 수 있게 해주는 컴포넌트입니다. 좋아요, 관심있어요 등의 감정적 피드백을 간편하게 제공할 때 사용됩니다.

Engine ≥ 3.6
사용 가능 버전@seed-design/[email protected], @seed-design/[email protected]

Installation

npm install @seed-design/lynx-react @seed-design/lynx-css

Lynx ReactionButton은 별도 ui:reaction-button snippet 없이 @seed-design/lynx-react 패키지에서 직접 제공합니다.

Usage

Lynx 예제를 불러오는 중입니다.

Props

Prop

Type

pressed?boolean | undefined
defaultPressed?boolean | undefined
onPressedChange?((pressed: boolean) => void) | undefined
disabled?boolean | undefined
loading?boolean | undefined
style?CSSProperties | undefined
children?React.ReactNode
className?string | undefined
bindtap?EventHandler<BaseTouchEvent<Target>> | undefined
main-thread:bindtap?EventHandler<BaseTouchEvent<Element>> | undefined

Examples

Small

Lynx 예제를 불러오는 중입니다.

Xsmall

Lynx 예제를 불러오는 중입니다.

Disabled

Lynx 예제를 불러오는 중입니다.

Loading

Lynx 예제를 불러오는 중입니다.

Loading 중에도 bindtaponPressedChange가 동작합니다. 이벤트를 막아야 한다면 disabled를 함께 사용하세요.

웹 버전과의 차이

Lynx ReactionButton은 React ReactionButton과 다음과 같은 차이가 있습니다.

  • 이벤트 핸들링: onClick 대신 bindtap을 사용합니다.
  • 렌더링 요소: HTML <button> 대신 네이티브 <view><text> 요소를 렌더링합니다.
  • 접근성 속성: aria-* 대신 Lynx native accessibility-* 속성을 사용합니다.
  • HTML 기능: button/form 속성, 키보드 focus, asChild를 지원하지 않습니다.
  • Loading 상태: spinner를 absolute로 얹고 기존 content를 숨겨 원래 버튼 폭을 유지합니다. React와 마찬가지로 이벤트는 유지됩니다.

Last updated on

목차