티스토리 뷰
안녕하세요! 코딩이 즐거운 좋아요요정입니다.
오늘은 재사용가능한 타이핑치는 효과 컴포넌트를 가지고 왔습니다.
포트폴리오를 만들면서 하나씩 정리해서 기록해보려고 합니다. :) (아잣아잣!)
오늘 소개하는 함수는 타이핑치는 효과 컴포넌트 입니다!
결과 미리보기💕
① 인자값으로 test , speed, fontSIze, color를 받습니다.
② 기본값으로 speed = 100, fontSIze= 1em, color: 'black'을 가지고 있습니다.
<TypingText />
import React, { useState, useEffect } from 'react';
const TypingText = ({text, speed, fontSize, color}) => {
TypingText.defaultProps = {
fontSize: '1em', //기본값
color: 'black'//기본값
}
const [Text, setText] = useState("");
const [Count, setCount] = useState(0);
useEffect(() => {
let typingText = text ? text : "";//기본값
let typingSpeed = speed ? speed : 100;//기본값
const interval = setInterval(() => {
setText((Text)=>{
let updated = Text;
updated = Text + typingText[Count];
return updated;
});
setCount(Count + 1);
}, typingSpeed);
Count === typingText.length && clearInterval(interval);
return () => clearInterval(interval);
})
return (
<p style={{fontSize:`${fontSize}`, color:`${color}`}} >{ Text }</p>
)
};
export default TypingText;
사용할 위치
import React from 'react';
import TypingText from '../../components/typingText/typingText';
const Loading = (props) => {
return (
<TypingText text="Thank you for visiting" speed={60} fontSize="1.25rem" color="green" />
)
};
export default Loading;
인자값을 전달하지 않을 시 기본값으로 입력됩니다.
오늘도 즐거운 코딩라이프되세요! :)
'Study-Note > react' 카테고리의 다른 글
[react] module styles.className 2개 사용 & 조건값으로 사용하는 패키지 classnames (0) | 2021.12.20 |
---|
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- 객체
- 자바스크립트
- 파이썬
- 면접
- 프로토타입
- 프로퍼티
- Prototype
- 복제
- 생성자함수
- 타이핑효과
- Call
- Python
- react
- 코딩테스트
- 선언
- 함수
- 프로그래머스
- 팀러버덕
- 프론트엔드
- 스택
- 스터디
- JS
- JavaScript
- this
- 타이핑
- 리액트
- SET
- 면접대비
- 메서드
- 상속
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
글 보관함