ERP-node/frontend/lib/registry/components/button-primary
kjs fef2f4a132 fix: 화면 편집기에서 버튼 스타일 실시간 반영 문제 해결
**문제:**
- 화면 편집기에서 버튼의 스타일(색상, 폰트 등)을 변경해도 실시간으로 반영되지 않음
- 저장 후 실제 화면에서는 정상적으로 보임

**원인:**
- ButtonPrimaryComponent에서 isInteractive 모드일 때만 component.style을 적용
- 디자인 모드(isDesignMode)에서는 사용자 정의 스타일이 무시됨

**해결:**
- buttonElementStyle에 component.style을 항상 적용하도록 수정
- width/height는 레이아웃 충돌 방지를 위해 제외 유지
- 디자인 모드와 인터랙티브 모드 모두에서 스타일 실시간 반영

**영향:**
- 화면 편집기에서 버튼 스타일 변경 시 즉시 미리보기 가능
- 저장하지 않아도 시각적 피드백 제공
2025-11-11 18:27:27 +09:00
..
ButtonPrimaryComponent.tsx fix: 화면 편집기에서 버튼 스타일 실시간 반영 문제 해결 2025-11-11 18:27:27 +09:00
ButtonPrimaryConfigPanel.tsx 버튼 버그 수정 2025-09-12 14:24:42 +09:00
ButtonPrimaryRenderer.tsx 컴포넌트 추가방식 변경 2025-09-11 18:38:28 +09:00
README.md 컴포넌트 추가방식 변경 2025-09-11 18:38:28 +09:00
config.ts 컴포넌트 추가방식 변경 2025-09-11 18:38:28 +09:00
index.ts 세부타입설정 2025-10-14 16:45:30 +09:00
types.ts 버튼 기능구현 2025-09-12 14:24:25 +09:00

README.md

ButtonPrimary 컴포넌트

button-primary 컴포넌트입니다

개요

  • ID: button-primary
  • 카테고리: action
  • 웹타입: button
  • 작성자: 개발팀
  • 버전: 1.0.0

특징

  • 자동 등록 시스템
  • 타입 안전성
  • Hot Reload 지원
  • 설정 패널 제공
  • 반응형 디자인

사용법

기본 사용법

import { ButtonPrimaryComponent } from "@/lib/registry/components/button-primary";

<ButtonPrimaryComponent
  component={{
    id: "my-button-primary",
    type: "widget",
    webType: "button",
    position: { x: 100, y: 100, z: 1 },
    size: { width: 120, height: 36 },
    config: {
      // 설정값들
    }
  }}
  isDesignMode={false}
/>

설정 옵션

속성 타입 기본값 설명
text string "버튼" 버튼 텍스트
actionType string "button" 버튼 타입
variant string "primary" 버튼 스타일
disabled boolean false 비활성화 여부
required boolean false 필수 입력 여부
readonly boolean false 읽기 전용 여부

이벤트

  • onChange: 값 변경 시
  • onFocus: 포커스 시
  • onBlur: 포커스 해제 시
  • onClick: 클릭 시

스타일링

컴포넌트는 다음과 같은 스타일 옵션을 제공합니다:

  • variant: "default" | "outlined" | "filled"
  • size: "sm" | "md" | "lg"

예시

// 기본 예시
<ButtonPrimaryComponent
  component={{
    id: "sample-button-primary",
    config: {
      placeholder: "입력하세요",
      required: true,
      variant: "outlined"
    }
  }}
/>

개발자 정보

  • 생성일: 2025-09-11
  • CLI 명령어: node scripts/create-component.js button-primary --category=action --webType=button
  • 경로: lib/registry/components/button-primary/

관련 문서