일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 코딩테스트
- 삼성역테
- 삼성역량테스트
- 다이나믹프로그래밍
- bfs문제
- DP문제
- dfs
- 초소형머신러닝
- BFS
- 임베디드 딥러닝
- 포스코 ai 교육
- 알고리즘
- 딥러닝
- tinyml
- 코테
- 삼성코테
- tflite
- DP
- 코테 문제
- MCU 딥러닝
- 포스코 AI교육
- 삼성코딩테스트
- 자료구조
- 영상처리
- 그리디
- dfs문제
- 포스코 교육
- 컴퓨팅사고
- TensorFlow Lite
- sort
- Today
- Total
코딩뚠뚠
[AWS] 카톡분석 프로젝트-8 / React useNavigate 본문
저번 포스팅에서는 React 라우터의 기본적인 사용방법을 익혀봤다.
[AWS] Lambda 구축하기-7 / React 라우터 사용
이전장에서는 S3로 구성한 정적 웹호스팅에 AWS의 CDN 서비스인 CloudFront를 이용해 https 보안을 적용하였고, Route53을 통해 나만의 도메인을 적용시켜보았다. [AWS] Lambda 구축하기-6 / S3 정적웹호스팅
dbstndi6316.tistory.com
이번 포스팅에서는 요청에 대한 응답으로 클릭없이 페이지를 이동해보고자 한다.
우선 이를 사용하기 위해서는 react-router-dom이 설치되어있어야 한다. 이전 포스팅 참고
1. Functional Component
- const navigate = useNavigate()를 function 내에 포함시켜준다
- onClickImg 를 예로 들었지만 response 부분에서도 동일하다 navigate('/주소') 로 페이지를 이동한다.
import { useNavigate } from 'react-router-dom';
function Func() {
const navigate = useNavigate();
const onClickImg = () => {
navigate(`/comment/id/등등 내가 원하는 주소`);
};
return (
<img src={...} alt={...} onClick={onClickImg} />
);
}
export default Func;
2. Class Component
사실 이번 포스팅을 쓴 이유이다.
Functional Component 에서 사용방법은 많이 나와있지만 Class Component 에서는 찾기 힘들었다..
그러던 와중 아래 페이지에서 답을 찾아 공유한다.
https://github.com/remix-run/react-router/issues/8146
- useNavigate 를 import 해준다.
import {useNavigate} from 'react-router-dom';
- class 밖에 아래 function을 따로 정의해준다.
function withNavigation(Component) {
return props => <Component {...props} navigate={useNavigate()} />;
}
- class 내 navigate를 사용하고 싶은 부분에 아래와 같이 사용해준다.
class Uploadfile extends Component{
...
onFileUpload = () => {
const formData = new FormData();
formData.append("demofile", this.state.selectedFile, this.state.selectedFile.name)
console.log(formData);
axios.post(API_URL, formData)
.then((response) => { //성공했을때
//navitate를 이용해 /analysis 페이지로 넘어가기
this.props.navigate('/analysis')
})
}
...
}
이렇게 class component 에서도 useNavigate 를 사용할 수 있다.
끝
'공부 > AWS' 카테고리의 다른 글
[AWS] 카톡분석 프로젝트-10 / React 링크 복사 버튼, 팝업 (1) | 2022.06.22 |
---|---|
[AWS] 카톡분석 프로젝트-9 / S3 관리 (9) | 2022.06.19 |
[AWS] 카톡분석 프로젝트-7 / React 라우터 사용 (2) | 2022.06.14 |
[AWS] 카톡분석 프로젝트-6 / S3 정적웹호스팅에 https 적용 (2) | 2022.06.06 |
[AWS] 카톡분석 프로젝트-5 / S3 이용한 정적웹호스팅 (0) | 2022.06.05 |