diff --git a/INDEX.md b/INDEX.md index 33803a0..0e3fb4f 100644 --- a/INDEX.md +++ b/INDEX.md @@ -255,6 +255,7 @@ DB 도메인별: | [20260317_account_code_change_notice.md](changes/20260317_account_code_change_notice.md) | 계정과목 코드 변경 안내 (경리 전달용) | | [20260318_notification_settings_soundtype.md](dev/changes/20260318_notification_settings_soundtype.md) | 알림설정 soundType API 연동 + 음원 파일 서빙 (React 미구현 항목 포함) | | [20260318_receiving_item_search_fix.md](dev/changes/20260318_receiving_item_search_fix.md) | 입고등록 품목검색 필터/페이징 수정 (per_page/itemType 파라미터 호환성) | +| [20260318_item_fields_htmx_redirect_fix.md](changes/20260318_item_fields_htmx_redirect_fix.md) | 품목기준 필드관리 HTMX 네비게이션 switchTab 오류 수정 | --- diff --git a/changes/20260318_item_fields_htmx_redirect_fix.md b/changes/20260318_item_fields_htmx_redirect_fix.md new file mode 100644 index 0000000..2684d6e --- /dev/null +++ b/changes/20260318_item_fields_htmx_redirect_fix.md @@ -0,0 +1,40 @@ +# 품목기준 필드관리 HTMX 네비게이션 오류 수정 + +**날짜:** 2026-03-18 +**작업자:** Claude Code + +## 변경 개요 + +품목기준 필드관리(`/item-fields`) 페이지에 HTMX 사이드바 내비게이션으로 진입 시 `switchTab is not defined` JS 오류가 발생하는 문제를 수정한다. + +## 원인 + +- `switchTab` 함수가 `@push('scripts')` 블록 안에 정의되어 있음 +- HTMX 부분 로드 시 `@push('scripts')` 블록이 실행되지 않아 함수가 미정의 상태 +- 탭 버튼 클릭 시 `onclick="switchTab('...')"` 호출 실패 + +## 수정된 파일 + +| 파일 | 변경 내용 | +|------|----------| +| `app/Http/Controllers/ItemFieldController.php` | HX-Redirect 처리 추가 | + +## 상세 변경 사항 + +`ItemFieldController::index()` 메서드에 HTMX 요청 감지 및 전체 페이지 리다이렉트 처리를 추가한다: + +```php +public function index(Request $request): View|Response +{ + if ($request->header('HX-Request')) { + return response('', 200)->header('HX-Redirect', route('item-fields.index')); + } + + $sourceTables = SystemFieldDefinition::getSourceTableOptions(); + return view('item-fields.index', compact('sourceTables')); +} +``` + +## 관련 문서 + +- MNG `CLAUDE.md` — HTMX 네비게이션 규칙 (HX-Redirect가 필요한 페이지 목록)