IT, 개발
-
끊임없이 진화하는 웹 개발 세계에서 React.js는 동적이고 반응형 사용자 인터페이스를 구축하기 위한 주요 라이브러리로 자리 잡았습니다. TypeScript와 결합하면 React는 타입 안전성과 코드 유지 관리성을 향상시켜 더욱 강력해집니다. 그러나 어떤 기술 스택이든 React.js와 TypeScript는 고유의 도전 과제를 제공할 수 있습니다. 개발자가 자주 마주치는 공통 문제 중 하나는 "window is not defined" 오류입니다. 이 기사에서는 이 오류의 원인을 탐구하고 코드 예제와 함께 효과적인 해결 방법을 살펴보겠습니다. 목차 "window is not defined" 오류란? 오류의 공통 원인 Window 객체 이해하기 문제 해결: 조건부 렌더링 사용 문제 해결: 서버 측 렌더링 ..
[Next.js, React.js] "window is not defined" 원인 및 해결 방법끊임없이 진화하는 웹 개발 세계에서 React.js는 동적이고 반응형 사용자 인터페이스를 구축하기 위한 주요 라이브러리로 자리 잡았습니다. TypeScript와 결합하면 React는 타입 안전성과 코드 유지 관리성을 향상시켜 더욱 강력해집니다. 그러나 어떤 기술 스택이든 React.js와 TypeScript는 고유의 도전 과제를 제공할 수 있습니다. 개발자가 자주 마주치는 공통 문제 중 하나는 "window is not defined" 오류입니다. 이 기사에서는 이 오류의 원인을 탐구하고 코드 예제와 함께 효과적인 해결 방법을 살펴보겠습니다. 목차 "window is not defined" 오류란? 오류의 공통 원인 Window 객체 이해하기 문제 해결: 조건부 렌더링 사용 문제 해결: 서버 측 렌더링 ..
2023.09.15 -
소개 웹 개발의 빠른 속도로 새로운 기술이 지속적으로 등장하여 사용자 경험을 향상시키고 코딩 프로세스를 간소화하는 데 기여하고 있습니다. HTMX는 대화형 웹 애플리케이션을 구축하는 방식을 혁신적으로 변화시키는 데에 큰 관심을 받는 혁신 중 하나입니다. HTMX란? HTMX는 HyperText Markup eXtension의 약자로, 개발자가 최소한의 노력으로 동적인 웹 페이지를 만들 수 있도록 도와주는 혁신적인 라이브러리입니다. 이는 AJAX (비동기식 자바스크립트 및 XML)와 HTML의 원리를 결합하여 복잡한 JavaScript 코드 없이도 웹페이지의 일부를 실시간으로 업데이트할 수 있는 기능을 제공합니다. HTMX의 힘 무결점 사용자 경험 HTMX는 특정 부분의 웹 페이지를 다시 로드하지 않고도 ..
HTMX 탐구: 인터랙티브 웹 개발의 혁신소개 웹 개발의 빠른 속도로 새로운 기술이 지속적으로 등장하여 사용자 경험을 향상시키고 코딩 프로세스를 간소화하는 데 기여하고 있습니다. HTMX는 대화형 웹 애플리케이션을 구축하는 방식을 혁신적으로 변화시키는 데에 큰 관심을 받는 혁신 중 하나입니다. HTMX란? HTMX는 HyperText Markup eXtension의 약자로, 개발자가 최소한의 노력으로 동적인 웹 페이지를 만들 수 있도록 도와주는 혁신적인 라이브러리입니다. 이는 AJAX (비동기식 자바스크립트 및 XML)와 HTML의 원리를 결합하여 복잡한 JavaScript 코드 없이도 웹페이지의 일부를 실시간으로 업데이트할 수 있는 기능을 제공합니다. HTMX의 힘 무결점 사용자 경험 HTMX는 특정 부분의 웹 페이지를 다시 로드하지 않고도 ..
2023.08.23 -
인공 지능 분야에서 Google BARD와 ChatGPT는 두 가지 뛰어난 경쟁자로, 각각은 우리가 기술과 상호 작용하는 방식을 혁신하려고 노력하고 있습니다. 이 두 가지 요소는 출발지와 기능에서는 다르지만, 공통적인 목표를 공유합니다: 고급 언어 처리를 통한 사용자 경험 향상. 이 글에서는 Google BARD와 ChatGPT의 특징, 응용 분야, 강점 및 한계를 자세히 살펴보겠습니다. 이 글을 마치면 이러한 기술이 어떻게 비교되며 어떻게 AI 기반 커뮤니케이션에 기여하는지에 대한 포괄적인 이해가 가능할 것입니다. Google BARD 이해하기 Google BARD란 무엇인가? Google BARD는 "Bi-directional AutoRegressive Denoising"의 약어로, Google의 연..
Google BARD(구글 바드) 대 ChatGPT 비교인공 지능 분야에서 Google BARD와 ChatGPT는 두 가지 뛰어난 경쟁자로, 각각은 우리가 기술과 상호 작용하는 방식을 혁신하려고 노력하고 있습니다. 이 두 가지 요소는 출발지와 기능에서는 다르지만, 공통적인 목표를 공유합니다: 고급 언어 처리를 통한 사용자 경험 향상. 이 글에서는 Google BARD와 ChatGPT의 특징, 응용 분야, 강점 및 한계를 자세히 살펴보겠습니다. 이 글을 마치면 이러한 기술이 어떻게 비교되며 어떻게 AI 기반 커뮤니케이션에 기여하는지에 대한 포괄적인 이해가 가능할 것입니다. Google BARD 이해하기 Google BARD란 무엇인가? Google BARD는 "Bi-directional AutoRegressive Denoising"의 약어로, Google의 연..
2023.08.17 -
효율적이고 신뢰성 있는 코드 작성에 열정을 가진 개발자라면 테스팅의 중요성을 이미 잘 알고 있을 것입니다. 테스팅은 코드가 의도한 대로 작동하는지 확인하고 버그가 본산에서 문제를 일으키기 전에 잡아내는 역할을 합니다. JavaScript 커뮤니티에서 테스팅을 위해 널리 사용되는 도구 중 하나가 Jest입니다. 이 글에서는 Jest의 강력한 기능 중 하나인 moduleNameMapper에 대해 자세히 알아보고 이것이 어떻게 테스팅 경험을 향상시킬 수 있는지 살펴보겠습니다. Jest와 테스팅 소개 소프트웨어 개발에서의 테스팅 중요성 소프트웨어 개발의 세계에서 테스팅은 코드의 품질과 신뢰성을 보장하는 데 핵심적인 역할을 합니다. 테스팅을 통해 개발 과정 초기에 문제를 식별하고 수정함으로써 본산에서 버그를 만날..
Jest의 moduleNameMapper: 원활한 테스팅을 위한 강력한 도구 탐구효율적이고 신뢰성 있는 코드 작성에 열정을 가진 개발자라면 테스팅의 중요성을 이미 잘 알고 있을 것입니다. 테스팅은 코드가 의도한 대로 작동하는지 확인하고 버그가 본산에서 문제를 일으키기 전에 잡아내는 역할을 합니다. JavaScript 커뮤니티에서 테스팅을 위해 널리 사용되는 도구 중 하나가 Jest입니다. 이 글에서는 Jest의 강력한 기능 중 하나인 moduleNameMapper에 대해 자세히 알아보고 이것이 어떻게 테스팅 경험을 향상시킬 수 있는지 살펴보겠습니다. Jest와 테스팅 소개 소프트웨어 개발에서의 테스팅 중요성 소프트웨어 개발의 세계에서 테스팅은 코드의 품질과 신뢰성을 보장하는 데 핵심적인 역할을 합니다. 테스팅을 통해 개발 과정 초기에 문제를 식별하고 수정함으로써 본산에서 버그를 만날..
2023.08.10 -
오늘날의 디지털 세계에서는 효과적인 이메일을 통한 소통이 기업이 번창하는 데 필수적입니다. 마케팅 캠페인, 거래 이메일 또는 고객 알림을 보내든지, 안정적이고 효율적인 이메일 전달 시스템을 갖추는 것이 중요합니다. 이메일 커뮤니케이션을 관리하기 위한 두 가지 인기있는 옵션은 아마존 단순 이메일 서비스 (SES)와 AWS SES와 Fluent SMTP입니다. 이 기사에서는 이러한 서비스들, 그들의 혜택들, 그리고 AWS SES와 Fluent SMTP를 설치하고 최적화하는 방법을 알아보겠습니다. 성공적인 이메일 전달을 보장하기 위해 이러한 서비스를 설정하고 최적화하는 방법을 알아보겠습니다. 아마존과 AWS SES 이해하기 아마존 단순 이메일 서비스 (SES)는 아마존 웹 서비스 (AWS)에서 제공하는 클라우..
AWS SES 와 FLUENT SMTP(워드프레스 플러그인) 연결오늘날의 디지털 세계에서는 효과적인 이메일을 통한 소통이 기업이 번창하는 데 필수적입니다. 마케팅 캠페인, 거래 이메일 또는 고객 알림을 보내든지, 안정적이고 효율적인 이메일 전달 시스템을 갖추는 것이 중요합니다. 이메일 커뮤니케이션을 관리하기 위한 두 가지 인기있는 옵션은 아마존 단순 이메일 서비스 (SES)와 AWS SES와 Fluent SMTP입니다. 이 기사에서는 이러한 서비스들, 그들의 혜택들, 그리고 AWS SES와 Fluent SMTP를 설치하고 최적화하는 방법을 알아보겠습니다. 성공적인 이메일 전달을 보장하기 위해 이러한 서비스를 설정하고 최적화하는 방법을 알아보겠습니다. 아마존과 AWS SES 이해하기 아마존 단순 이메일 서비스 (SES)는 아마존 웹 서비스 (AWS)에서 제공하는 클라우..
2023.08.03 -
AWS Lightsail과 원격 SSH를 사용하여 Visual Studio Code (VSCode)를 연결하는 방법 소개 이 글에서는 AWS Lightsail과 원격 SSH를 사용하여 Visual Studio Code (VSCode)를 연결하는 방법을 알아보겠습니다. AWS Lightsail은 클라우드에서 가상 개인 서버를 간편하고 경제적으로 관리할 수 있는 방법이며, VSCode는 인기있고 다재다능한 코드 편집기입니다. 두 가지 기술의 힘을 결합하여 개발자들은 생산성을 향상시키고 AWS Lightsail 인스턴스에서 원활하게 협업할 수 있습니다. 이제 단계별로 이 연결 설정하는 과정을 살펴봅시다. 준비물 HOST : Host 주소를 AWS Lightsail에서 알 수 있고, 고정IP를 꼭 설정하자. K..
AWS Lightsail과 원격 SSH를 사용하여 Visual Studio Code (VSCode)를 연결하는 방법AWS Lightsail과 원격 SSH를 사용하여 Visual Studio Code (VSCode)를 연결하는 방법 소개 이 글에서는 AWS Lightsail과 원격 SSH를 사용하여 Visual Studio Code (VSCode)를 연결하는 방법을 알아보겠습니다. AWS Lightsail은 클라우드에서 가상 개인 서버를 간편하고 경제적으로 관리할 수 있는 방법이며, VSCode는 인기있고 다재다능한 코드 편집기입니다. 두 가지 기술의 힘을 결합하여 개발자들은 생산성을 향상시키고 AWS Lightsail 인스턴스에서 원활하게 협업할 수 있습니다. 이제 단계별로 이 연결 설정하는 과정을 살펴봅시다. 준비물 HOST : Host 주소를 AWS Lightsail에서 알 수 있고, 고정IP를 꼭 설정하자. K..
2023.07.31 -
npm(Node Package Manager)은 Node.js 생태계의 기본 요소로, 개발자들이 다양한 패키지와 라이브러리에 접근하고 활용할 수 있도록 해줍니다. npm 패키지는 재사용 가능한 코드와 기능을 제공하여 개발 프로세스를 더욱 빠르고 효율적으로 만들어줍니다. 이러한 npm 패키지 중 하나인 "depcheck"는 종속성(dependencies) 관리를 도와주는 패키지입니다. npm 패키지 이해 "depcheck"에 대해 자세히 알기 전에 npm 패키지의 개념을 이해하는 것이 중요합니다. 이 패키지들은 개발자들이 Node.js 애플리케이션의 기능을 확장하기 위해 사용하는 코드의 집합입니다. 개발자들은 새롭게 발명하는 대신 기존 패키지를 활용하여 시간과 노력을 절약할 수 있습니다. 종속성 관리의 중..
필요 없는 npm 패키지 정리 - depchecknpm(Node Package Manager)은 Node.js 생태계의 기본 요소로, 개발자들이 다양한 패키지와 라이브러리에 접근하고 활용할 수 있도록 해줍니다. npm 패키지는 재사용 가능한 코드와 기능을 제공하여 개발 프로세스를 더욱 빠르고 효율적으로 만들어줍니다. 이러한 npm 패키지 중 하나인 "depcheck"는 종속성(dependencies) 관리를 도와주는 패키지입니다. npm 패키지 이해 "depcheck"에 대해 자세히 알기 전에 npm 패키지의 개념을 이해하는 것이 중요합니다. 이 패키지들은 개발자들이 Node.js 애플리케이션의 기능을 확장하기 위해 사용하는 코드의 집합입니다. 개발자들은 새롭게 발명하는 대신 기존 패키지를 활용하여 시간과 노력을 절약할 수 있습니다. 종속성 관리의 중..
2023.07.25 -
소개 오늘날의 디지털 시대에 강력한 온라인 입지를 확보하는 것은 기업과 개인 모두에게 매우 중요합니다. 온라인 입지를 확립하기 위한 필수 단계 중 하나는 도메인을 안정적이고 확장 가능한 호스팅 서비스에 연결하는 것입니다. Amazon Web Services(AWS)는 이러한 목적을 위해 도메인 등록 및 관리를 위한 AWS Route 53과 웹 사이트 및 애플리케이션 호스팅을 위한 AWS Lightsail의 두 가지 강력한 서비스를 제공합니다. 이 기사에서는 도메인을 AWS Route 53 및 AWS Lightsail과 연결하여 웹 사이트를 효율적으로 실행하는 방법에 대한 단계별 가이드를 안내합니다. 목차 도메인 등록 이해 아마존 웹 서비스(AWS)에 가입하기 AWS Route 53 설정 호스팅 영역 생성..
도메인을 AWS Route 53과 AWS Lightsail과 연결하는 방법소개 오늘날의 디지털 시대에 강력한 온라인 입지를 확보하는 것은 기업과 개인 모두에게 매우 중요합니다. 온라인 입지를 확립하기 위한 필수 단계 중 하나는 도메인을 안정적이고 확장 가능한 호스팅 서비스에 연결하는 것입니다. Amazon Web Services(AWS)는 이러한 목적을 위해 도메인 등록 및 관리를 위한 AWS Route 53과 웹 사이트 및 애플리케이션 호스팅을 위한 AWS Lightsail의 두 가지 강력한 서비스를 제공합니다. 이 기사에서는 도메인을 AWS Route 53 및 AWS Lightsail과 연결하여 웹 사이트를 효율적으로 실행하는 방법에 대한 단계별 가이드를 안내합니다. 목차 도메인 등록 이해 아마존 웹 서비스(AWS)에 가입하기 AWS Route 53 설정 호스팅 영역 생성..
2023.07.23 -
리액트 슬라이더: 웹 디자인에 활용되는 현대적인 도구 목차 소개 리액트 슬라이더의 장점 리액트 슬라이더 설치 방법 리액트 슬라이더 컴포넌트 사용 방법 리액트 슬라이더의 커스터마이징 리액트 슬라이더와 SEO의 관계 리액트 슬라이더의 미래 전망 결론 자주 묻는 질문 (FAQs) 1. 소개 리액트 슬라이더는 웹 디자인에 사용되는 매우 유용한 도구입니다. 이 도구를 사용하면 웹 페이지에서 이미지나 콘텐츠를 시각적으로 전달할 수 있으며, 사용자에게 좋은 사용자 경험을 제공할 수 있습니다. 리액트 슬라이더는 모바일 앱이나 데스크톱 앱에서도 흔히 사용되며, 많은 웹 개발자들에게 인기가 있습니다. 2. 리액트 슬라이더의 장점 리액트 슬라이더를 사용하는 것에는 여러 가지 장점이 있습니다. 그 중에서도 주요한 장점은 다음..
리액트 슬라이더(react slider)리액트 슬라이더: 웹 디자인에 활용되는 현대적인 도구 목차 소개 리액트 슬라이더의 장점 리액트 슬라이더 설치 방법 리액트 슬라이더 컴포넌트 사용 방법 리액트 슬라이더의 커스터마이징 리액트 슬라이더와 SEO의 관계 리액트 슬라이더의 미래 전망 결론 자주 묻는 질문 (FAQs) 1. 소개 리액트 슬라이더는 웹 디자인에 사용되는 매우 유용한 도구입니다. 이 도구를 사용하면 웹 페이지에서 이미지나 콘텐츠를 시각적으로 전달할 수 있으며, 사용자에게 좋은 사용자 경험을 제공할 수 있습니다. 리액트 슬라이더는 모바일 앱이나 데스크톱 앱에서도 흔히 사용되며, 많은 웹 개발자들에게 인기가 있습니다. 2. 리액트 슬라이더의 장점 리액트 슬라이더를 사용하는 것에는 여러 가지 장점이 있습니다. 그 중에서도 주요한 장점은 다음..
2023.07.11 -
React Intersection Observer는 웹 개발자들이 요소의 가시성과 화면 내 위치에 대한 정보를 얻을 수 있는 강력한 라이브러리입니다. 이 글에서는 React Intersection Observer의 사용법과 기능에 대해 자세히 알아보겠습니다. Observer API란? Observer API는 웹 애플리케이션에서 시스템 이벤트 및 상태 변화를 감지하는 데 사용되는 JavaScript API입니다. 이 API는 브라우저에서 실행되는 애플리케이션에서 사용자의 시스템 환경과 관련된 정보를 제공합니다. Observer API는 사용자의 네트워크 연결 상태, 배터리 수준, 장치 방향, 화면 밝기 등과 같은 정보를 확인할 수 있습니다. 이를 통해 웹 개발자는 사용자의 디바이스 환경에 대한 인사이트를..
[React Intersection Observer] Lazy Loading, 무한스크롤React Intersection Observer는 웹 개발자들이 요소의 가시성과 화면 내 위치에 대한 정보를 얻을 수 있는 강력한 라이브러리입니다. 이 글에서는 React Intersection Observer의 사용법과 기능에 대해 자세히 알아보겠습니다. Observer API란? Observer API는 웹 애플리케이션에서 시스템 이벤트 및 상태 변화를 감지하는 데 사용되는 JavaScript API입니다. 이 API는 브라우저에서 실행되는 애플리케이션에서 사용자의 시스템 환경과 관련된 정보를 제공합니다. Observer API는 사용자의 네트워크 연결 상태, 배터리 수준, 장치 방향, 화면 밝기 등과 같은 정보를 확인할 수 있습니다. 이를 통해 웹 개발자는 사용자의 디바이스 환경에 대한 인사이트를..
2023.07.09 -
AWS Lightsail은 가상 개인 서버(Virtual Private Server, VPS)를 제공하는 Amazon Web Services의 서비스입니다. FileZilla는 *FTP(File Transfer Protocol) 클라이언트로서, 원격 서버와 파일 전송을 위해 사용됩니다. AWS Lightsail 인스턴스에 FileZilla를 사용하여 연결하려면 다음 단계를 따르세요: *FTP(File Transfer Protocol)란? FTP는 "파일 전송 프로토콜(File Transfer Protocol)"의 약자입니다. FTP는 컴퓨터 네트워크를 통해 파일을 전송하기 위한 표준 프로토콜이며, 클라이언트와 서버 간에 파일 전송을 위한 통신 방법을 정의합니다. FTP는 클라이언트-서버 모델을 기반으로 ..
FileZilla(SFTP)를 이용하여 AWS Lightsail 연결하기AWS Lightsail은 가상 개인 서버(Virtual Private Server, VPS)를 제공하는 Amazon Web Services의 서비스입니다. FileZilla는 *FTP(File Transfer Protocol) 클라이언트로서, 원격 서버와 파일 전송을 위해 사용됩니다. AWS Lightsail 인스턴스에 FileZilla를 사용하여 연결하려면 다음 단계를 따르세요: *FTP(File Transfer Protocol)란? FTP는 "파일 전송 프로토콜(File Transfer Protocol)"의 약자입니다. FTP는 컴퓨터 네트워크를 통해 파일을 전송하기 위한 표준 프로토콜이며, 클라이언트와 서버 간에 파일 전송을 위한 통신 방법을 정의합니다. FTP는 클라이언트-서버 모델을 기반으로 ..
2023.06.25 -
사전 작업 AWS LightSail 계정 만들기 인스턴스 생성 AWS Lightsail 워드프레스 설치 AWS Lightsail 워드프레스 설치 방법 사전에 진행되어야 할 작업 AWS 가입 및 Lightsail 가입 1. *Instance(인스턴스) 생성 맨 처음은 화면과 같이 인스턴스를 생성해주어야 한다. 플랫폼으로는 리눅스(Linux)/Unix 환경을 선택해주자. 그 이유 pusha.tistory.com 개요 이 기사는 AWS LightSail의 정적 IP 연결에 대해 다룹니다. AWS LightSail은 간단하고 신속하게 웹 응용 프로그램 및 웹 사이트를 시작하고 관리하기 위한 서비스입니다. 정적 IP는 애플리케이션에 고정된 IP 주소를 제공하여 신뢰성과 안정성을 향상시킵니다. 여기에서는 AWS L..
AWS Lightsail 고정(Static) IP 연결 (워드프레스편)사전 작업 AWS LightSail 계정 만들기 인스턴스 생성 AWS Lightsail 워드프레스 설치 AWS Lightsail 워드프레스 설치 방법 사전에 진행되어야 할 작업 AWS 가입 및 Lightsail 가입 1. *Instance(인스턴스) 생성 맨 처음은 화면과 같이 인스턴스를 생성해주어야 한다. 플랫폼으로는 리눅스(Linux)/Unix 환경을 선택해주자. 그 이유 pusha.tistory.com 개요 이 기사는 AWS LightSail의 정적 IP 연결에 대해 다룹니다. AWS LightSail은 간단하고 신속하게 웹 응용 프로그램 및 웹 사이트를 시작하고 관리하기 위한 서비스입니다. 정적 IP는 애플리케이션에 고정된 IP 주소를 제공하여 신뢰성과 안정성을 향상시킵니다. 여기에서는 AWS L..
2023.06.24 -
에러 발생 사용하고 있는 라이브러리 패키지 버전 업데이트 후 배포 과정에서 아래의 에러메세지가 발생하였다. Node.js version 16.x has reached End-of-Life. Deployments created on or after 2023-08-15 will fail to build. Please set Node.js Version to 18.x in your Project Settings to use Node.js 18. 에러 발생 원인 해당 에러 발생 이유는 현재 배포 환경에 있는 Node.js 버전이 현재 사용하고 있는 Node Version 혹은 라이브러리 패키지들과 맞지 않아 발생한 이유이다. 에러 해결 필자의 경우 Vercel에서 Node.js Version 16을 사용하고 있..
Node.js version xx.x has reached End-of-Life.에러 발생 사용하고 있는 라이브러리 패키지 버전 업데이트 후 배포 과정에서 아래의 에러메세지가 발생하였다. Node.js version 16.x has reached End-of-Life. Deployments created on or after 2023-08-15 will fail to build. Please set Node.js Version to 18.x in your Project Settings to use Node.js 18. 에러 발생 원인 해당 에러 발생 이유는 현재 배포 환경에 있는 Node.js 버전이 현재 사용하고 있는 Node Version 혹은 라이브러리 패키지들과 맞지 않아 발생한 이유이다. 에러 해결 필자의 경우 Vercel에서 Node.js Version 16을 사용하고 있..
2023.06.24 -
Confirm Password * { if (watch('password') != val) { return 'Your passwords do no match'; } }, })} /> {errors.confirm_password?.type === 'required' && ( Confirm Password is required )} {errors.confirm_password?.type === 'validate' && ( Confirm Password is not same Password )} React Hook Form은 React 애플리케이션에서 폼을 만들고 유효성을 검사하기 위한 간편한 방법을 제공하는 인기 있는 라이브러리입니다. 그러나 때로는 React Hook Form을 사용하는 동안 발생할 수 있..
React Hook Form Validate Error MessageConfirm Password * { if (watch('password') != val) { return 'Your passwords do no match'; } }, })} /> {errors.confirm_password?.type === 'required' && ( Confirm Password is required )} {errors.confirm_password?.type === 'validate' && ( Confirm Password is not same Password )} React Hook Form은 React 애플리케이션에서 폼을 만들고 유효성을 검사하기 위한 간편한 방법을 제공하는 인기 있는 라이브러리입니다. 그러나 때로는 React Hook Form을 사용하는 동안 발생할 수 있..
2023.06.15 -
에러 증상은 페이지 이동시에는 새로 고침하면 API가 새로 호출되어 화면이 리렌더링 되고 있었으나, 뒤로가기 통해서 다시 해당 페이지 들어가면 리렌더링이 제대로 되지 않았다. debugger를 통한 디버깅해보니 state값이 제대로 변경되지 않고 있었다. 즉, 컴포넌트 리렌더링시 props 값은 변경되고 있으나, useEffect를 통한 state가 변경되고 있지 않았다. 비슷한 증상 stackoverflow 검색 내용을 첨부하니 참조하자. import React, { useState, useEffect } from "react"; import { Route, Redirect } from "react-router-dom"; import { checkLoggedIn } from "utils/Api"; ex..
useEffect와 useState state 업데이트 에러에러 증상은 페이지 이동시에는 새로 고침하면 API가 새로 호출되어 화면이 리렌더링 되고 있었으나, 뒤로가기 통해서 다시 해당 페이지 들어가면 리렌더링이 제대로 되지 않았다. debugger를 통한 디버깅해보니 state값이 제대로 변경되지 않고 있었다. 즉, 컴포넌트 리렌더링시 props 값은 변경되고 있으나, useEffect를 통한 state가 변경되고 있지 않았다. 비슷한 증상 stackoverflow 검색 내용을 첨부하니 참조하자. import React, { useState, useEffect } from "react"; import { Route, Redirect } from "react-router-dom"; import { checkLoggedIn } from "utils/Api"; ex..
2022.08.06 -
Merge Github에서 Pull request(PR)를 만들면 Merge 종류가 다양하게 있다. 기본적인 merge(Create a merge commit), Squash and merge과 Rebase and merge를 알아보자. Create a merge commit(기본 merge) 하나의 브랜치와 다른 브랜치 변경 이력 전체를 합치는 기존 방법이다. a,b,c 병합시 Merge commit(m)이 Master 브랜치에 새로 추가된다. Merge 옵션 설정을 안하면 진행되는 방식으로 보통 Merge branch 'develop' of ... 라는 commit 내역을 볼 수 있다. 단점으로는 merge가 많으면 히스토리 그래프 가독성이 떨어진다. Merge branch 'develop' of ...
Git MergeMerge Github에서 Pull request(PR)를 만들면 Merge 종류가 다양하게 있다. 기본적인 merge(Create a merge commit), Squash and merge과 Rebase and merge를 알아보자. Create a merge commit(기본 merge) 하나의 브랜치와 다른 브랜치 변경 이력 전체를 합치는 기존 방법이다. a,b,c 병합시 Merge commit(m)이 Master 브랜치에 새로 추가된다. Merge 옵션 설정을 안하면 진행되는 방식으로 보통 Merge branch 'develop' of ... 라는 commit 내역을 볼 수 있다. 단점으로는 merge가 많으면 히스토리 그래프 가독성이 떨어진다. Merge branch 'develop' of ...
2022.08.04