Fix missing widgets/types import causing client-side error

This commit is contained in:
hyeonsu 2025-09-18 19:26:28 +09:00
parent 6b6ae7e9f4
commit 50079d359c
2 changed files with 13 additions and 7 deletions

View File

@ -3,7 +3,7 @@
import React, { useMemo } from "react";
import { WebTypeRegistry } from "./WebTypeRegistry";
import { DynamicComponentProps } from "./types";
import { getWidgetComponentByWebType, getWidgetComponentByName } from "@/components/screen/widgets/types";
// import { getWidgetComponentByWebType, getWidgetComponentByName } from "@/components/screen/widgets/types"; // 임시 비활성화
import { useWebTypes } from "@/hooks/admin/useWebTypes";
/**
@ -53,9 +53,11 @@ export const DynamicWebTypeRenderer: React.FC<DynamicComponentProps> = ({
console.log(`웹타입 "${webType}" → DB 지정 컴포넌트 "${dbWebType.component_name}" 사용`);
console.log(`DB 웹타입 정보:`, dbWebType);
console.log(`웹타입 데이터 배열:`, webTypes);
const ComponentByName = getWidgetComponentByName(dbWebType.component_name);
console.log(`컴포넌트 "${dbWebType.component_name}" 성공적으로 로드됨:`, ComponentByName);
return <ComponentByName {...props} {...finalProps} />;
// const ComponentByName = getWidgetComponentByName(dbWebType.component_name);
// console.log(`컴포넌트 "${dbWebType.component_name}" 성공적으로 로드됨:`, ComponentByName);
// return <ComponentByName {...props} {...finalProps} />;
console.warn(`DB 지정 컴포넌트 "${dbWebType.component_name}" 기능 임시 비활성화`);
return <div> ...</div>;
} catch (error) {
console.error(`DB 지정 컴포넌트 "${dbWebType.component_name}" 렌더링 실패:`, error);
}
@ -89,8 +91,10 @@ export const DynamicWebTypeRenderer: React.FC<DynamicComponentProps> = ({
// 3순위: 웹타입명으로 자동 매핑 (폴백)
try {
console.warn(`웹타입 "${webType}" → 자동 매핑 폴백 사용`);
const FallbackComponent = getWidgetComponentByWebType(webType);
return <FallbackComponent {...props} />;
// const FallbackComponent = getWidgetComponentByWebType(webType);
// return <FallbackComponent {...props} />;
console.warn(`웹타입 "${webType}" 폴백 기능 임시 비활성화`);
return <div> ...</div>;
} catch (error) {
console.error(`웹타입 "${webType}" 폴백 컴포넌트 렌더링 실패:`, error);
return (

View File

@ -37,7 +37,9 @@ const nextConfig = {
// 환경 변수 (런타임에 읽기)
env: {
// 프로덕션에서는 직접 백엔드 URL 사용, 개발환경에서는 프록시 사용
NEXT_PUBLIC_API_URL: process.env.NEXT_PUBLIC_API_URL || (process.env.NODE_ENV === "production" ? "http://39.117.244.52:8080/api" : "/api"),
NEXT_PUBLIC_API_URL:
process.env.NEXT_PUBLIC_API_URL ||
(process.env.NODE_ENV === "production" ? "http://39.117.244.52:8080/api" : "/api"),
},
};