전체 글(85)
-
페이드인 오프닝 화면 만들기
웹사이트에 처음 접속할 때 부드럽게 페이드인되는 오프닝 화면 구현 방법 기록오프닝 화면은 배경 이미지와 애니메이션 요소들로 구성되며, 스크롤에 반응하여 동적으로 변하는 기능을 구현할 것입니다. 사실, 이 작업은 꽤 노가다(수작업)라서 코드는 장황해질 수밖에 없습니다. 그래도 최종 결과물은 꽤 멋질 거예요!...?? 주요 기술CSS 애니메이션React와 styled-components 1. 페이드인 애니메이션 적용import React, { useEffect, useState } from 'react';import styled, { keyframes } from 'styled-components';const fadeIn = keyframes` from { opacity: 0; } to { ..
-
회원 관리 기능 구현하기
Vue.js에서 회원 관리 기능 방법 기록Part1. 회원가입 회원가입은 사용자가 이메일, 이름, 비밀번호를 입력하고 가입하는 기능입니다. 먼저, 회원가입 폼을 만들어 보겠습니다. 회원가입 폼 구현 {{ $t("[3].joinSection.RJoin") }} {{ $t("[3].joinSection.errorExistEmail") }} {{ $t("[3].joinSection.errorFormatEmail") }} ..
-
다크모드 구현하기
Vue.js와 Vuex를 사용하여 다크모드를 구현하는 방법 기록다크모드는 사용자가 웹사이트나 애플리케이션을 어두운 테마로 전환할 수 있는 기능입니다. 이를 통해 시각적 피로를 줄이고, 다양한 환경에서의 가독성을 향상시킬 수 있습니다. 1. Vuex 설정먼저, 다크모드 상태를 관리하기 위해 Vuex를 설정합니다. Vuex는 Vue.js 애플리케이션에서 상태 관리를 효율적으로 할 수 있게 해주는 라이브러리입니다. Vuex 설정 (store/index.js 및 store/dark/index.js)store/index.jsimport Vue from "vue";import Vuex from "vuex";import VuexPersistence from "vuex-persist";import modDark fro..
-
Vue.js에서 다국어 처리 구현하기(i18n사용)
Vue.js와 Vue I18n을 사용하여 다국어 지원을 구현하는 방법 기록1. Vue I18n 설정먼저, Vue I18n을 설치하고 설정합니다. Vue I18n은 Vue.js 애플리케이션에서 국제화를 쉽게 구현할 수 있게 해주는 라이브러리입니다. i18n.js 파일i18n.js 파일에서는 다국어 JSON 파일을 로드하여 Vue I18n에 등록하는 기능을 포함합니다. messages 객체에 각 언어의 번역 데이터를 저장합니다 import Vue from "vue";import VueI18n from "vue-i18n";import axios from "axios";Vue.use(VueI18n);const messages = { ko: {}, en: {},};const languages = ["ko", ..
-
Q&A 게시판 구현하기 - Part 3 게시글 조회수 업데이트
Q&A 게시판에서 조회수를 업데이트하는 기능을 구현 방법 기록사용자가 게시글을 클릭하여 상세 내용을 확인할 때마다 해당 게시글의 조회수를 증가시키는 기능입니다. 이 기능을 통해 게시글의 인기도와 관심도를 측정할 수 있습니다. 1. 조회수 업데이트 로직 구현조회수 업데이트 로직은 게시글 상세보기 컴포넌트인 BoardDetail.vue와 Vuex 상태 관리 모듈을 통해 구현됩니다. Vuex 상태 관리 모듈 (board/index.js)먼저, Vuex 상태 관리 모듈에서 조회수 업데이트를 위한 mutation 함수를 정의합니다.import dayjs from "dayjs";export default { state: { boardList: [], // 게시글 목록 데이터 answerList: [],..
-
Q&A 게시판 구현하기 - Part 2 게시글 상세보기 및 페이징 처리
Q&A 게시판 구현의 두 번째 파트로, 게시글 상세보기와 페이징 처리 방법 기록1. 게시글 상세보기 컴포넌트 (BoardDetail.vue)게시글의 상세 내용을 표시하는 BoardDetail.vue 컴포넌트를 구현합니다. Q&A {{ $t("[3].boarddetail.list") }} {{ $t("[3].boarddetail.title") }} {{ item.subject }} {{ $t("[3].boarddetail.waiting") }} ..