Redux 공식 문서를 봐가면서 Redux를 적용했는데 reducer함수의 action 타입을 정해주는데 애를 먹었다. 이를 해결하다가 새로운 타입스크립트 문법을 알게 되었다. // action의 타입을 무엇으로 해야한단말인가... const todoReducers = (state = initialState, action) => { switch (action.type) { case 'ADD_TODO': // ... state 변경 로직 } } ReturnType ReturnType을 사용하면 함수 Type의 반환 타입으로 구성된 타입을 생성한다. ReturnType // 예시 type T0 = ReturnType string>; // type T0 = string type T1 = ReturnType v..
원격 저장소에 있는 다른 브랜치를 받아오고 싶을 때! 원격 저장소에 있는 브랜치 확인하기 git branch -r 원격 저장소와 동일한 이름의 브랜치가 있으면 삭제하기 git branch -d dev 원격 저장소 브랜치 가져오기 -t : 원격 저장소와 동일한 이름의 브랜치를 생성하고 해당 브랜치로 이동 -f : 문제가 발생해도 강제로 브랜치 이름과 동일한 로컬 저장소 브랜치를 생성하고 해당 브랜치로 이동 -b : 브랜치이름을 변경해서 가져올 수 있음 // git checkout -t 원격저장소브랜치이름 git checkout -t origin/develop
공식문서 onChangeText 의 텍스트가 바뀔 때 발생하는 이벤트이다. event로 텍스트를 받아오는 것 같다. import React, { useState } from 'react'; import { Text, TextInput, View } from 'react-native'; const PizzaTranslator = () => { const [text, setText] = useState(''); return ( setText(newText)} defaultValue={text} /> {text.split(' ').map((word) => word && '🍕').join(' ')} ); } export default PizzaTranslator; onSubmitEditing 의 버튼이 눌렸을 ..
SSL 인증서 이해의 핵심 1. 클라이언트가 접속한 서버가 신뢰 할 수 있는 서버임을 보증 2. SSL 통신에 사용할 공개키를 클라이언트에게 제공 CA(Certificate Authority) 어떤 사이트가 신뢰할 수 있는 사이트인지 보장, 보증하는 역할을 하는 조직들을 말한다. Root Certificate라고도 한다. SSL을 통해서 암호화된 통신을 제공하려는 서비스는 CA를 통해서 인증서를 구입해야 한다. 사이트에 대한 신뢰성이 확보되어있는 직접 사용하는 서버, 사내에서 사용하는 서버에서 SSL의 보안기능을 사용하고싶을 때는 스스로 CA의 역할을 해 사용할 수 있다. 하지만 퍼블릭한 서비스에서 이 방식을 사용하면 좋지 않은 사용자 경험을 줄 수 있다. 사설 인증기관을 사용하면 https를 사용하기는..
요즘 프로그래머스 0단계를 하루에 하나씩 풀고 있는데 종이 자르기 문제를 구질구질하게 풀었다가 정답 코드를 보니 허망해져서 기록해 둔다. M = 1, N = 9와 같은 3번 케이스를 통과하기 위해서 if문에 elif를 추가해 이렇게 풀었다. # 첫번째 풀이 def solution(M, N): if M == 1 and N == 1: return 0 answer = [M - 1, 0] if M > 1 and N == 1: answer[1] = M - 1 elif M == 1 and N > 1: answer[1] = N - 1 else: answer[1] = M * (N - 1) return sum(answer) 그런데 다른 사람들의 정답을 보니 한 줄이었다...🥲 # 다른 사람의 풀이 def solution..
원티드 주관 겨울인턴 회사에 지원해 프론트엔드 과제를 진행했다. 월요일 10시부터 목요일 10시까지 3일의 기간동안 진행됐고, 원본 레포에 PR을 보내 제출했다. 아래는 작성한 PR 내용이다. GitHub repo 필수 수행 항목 1. any 를 사용하지 말고 Type을 지정해 주세요. 컴포넌트와 데이터에 필요한 Type을 선언해 지정해주었습니다. 에러를 띄우지 않는 부분에서는 타입스크립트가 타입을 추론할 수 있도록 했습니다. Type은 /src/types 폴더에 위치해 있습니다. 2. 컴포넌트를 분리하고, 적당한 폴더를 만들어 파일들을 배치하세요. /src의 하위 폴더들을 생성하여 파일을 위치시켰습니다. /apis : api 통신과 관련된 파일을 담는 폴더입니다. /hooks : 커스텀 훅을 담는 폴더..
숫자에 콤마 찍기, 한국 날짜로 변경하기 num.toLocaleString() 숫자 세 자리 마다 콤마(,)를 찍는 방법을 정규 표현식으로만 사용했었는데 날짜에만 사용할 수 있는 줄 알았던 toLocaleString을 숫자에도 사용할 수 있다는 사실을 알게 되었다. 아주 간편하다! 하지만 정규식 좋아잉... // 정규식 const addComma = (money) => { if (money === '' || typeof money === 'undefined') return ''; return money?.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ','); }; // toLocaleString() const addComma = (money) => { if (money ..
heart 값에 따라서 state를 바꿔주고 싶은데 prev에 undefined가 들어올 수도 있기 때문에 안된다고 에러가 떴다. heart ? setCountLikes((prev) => prev - 1) : setCountLikes((prev) => prev + 1); (parameter) prev: number | undefined 'prev' is possibly 'undefined'. 'prev' is possibly 'undefined'. 이유 undefined이 들어왔을 때를 대비해 처리해주면 되는데 countLikes나 typeof 연산자로 조건으로 If문을 사용하면 prev와 달라서 그런지 빨간 줄이 사라지지 않았다. 그래도 아래의 방법들로 해결할 수 있었다. keyword as heart..
- Total
- Today
- Yesterday
- 비주얼스튜디오코드
- 회고
- React
- html
- 리액트
- 제로초
- git
- Typescript
- vscode
- 파이썬
- TS
- CSS
- map
- 코드잇
- 자바스크립트
- Til
- 스파르타코딩클럽
- js
- 김버그
- scss
- 코딩앙마
- javascript
- 제이쿼리
- vue
- Python
- 저스트코드
- 타입스크립트
- 구름에듀
- 드림코딩
- 깃
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |