[TIL]
·
TIL(Today I Learned)
1.no-case-declarations case/default 절에서는 선언을 허용하지 않는다. 이유는 선언이 전체 스위치 블록에서는 볼 수 있지만 해당 case에 들어올 때만 초기화되기 때문이다. 나의 경우는 해당 case에서만 사용할 것이기 때문에 case안에 넣고 싶다. 굳이 필요없이 api를 호출하고 싶지 않기 때문이다. 해결방법 var로 선언 블록으로 감싼다. 나의 경우는 블록으로 감싸는 것을 택했다. 참고: https://eslint.org/docs/latest/rules/no-case-declarations no-case-declarations - ESLint - Pluggable JavaScript Linter A pluggable and configurable linter tool fo..
[TIL]immer
·
TIL(Today I Learned)
immer 구조가 복잡한 객체도 매우 쉽고 짧은 코드를 사용하여 불변성을 유지하면서 업데이트 해 주는 라이브러리이다. 1. immer 설치 yarn add immer ▽ 참고 https://immerjs.github.io/immer/
HOC(higher-order component)
·
Vue
컴포넌트의 코드를 재사용하기 위한 고급기술이다. imoprt produce from 'immer'; // produce는 두 가지 파라미터를 받는다. // 첫 번째 파라미터는 수정하고 싶은 상태이다. // 두번째 파라미터는 상태를 어떻게 업데이트할지 정의하는 함수이다. // 두번째 파라미터로 전달되는 함수 내부에서 원하는 값을 변경하면, // produce 함수가 불변성 유지를 대신해 주면서 새로운상태를 생성해 준다. const nextState = produce(originalState, draft => { draft.somewhere.deep.inside = 5; })
외부에서 local서버로 접속하기(with ngrok)
·
TIL(Today I Learned)
1. https://ngrok.com/ 에 접속한다. 2. 'Sign up for free'를 클릭한다. 3. 회원가입 완료 후 아래의 페이지가 표시된다. 4. 'Download for Windows'를 클릭한다. 5. C:\Windows\System32에 zip파일을 푼다. 6. C:\Users\jiyoon\AppData\Local\ngrok에 ngrok.yml파일을 생성한다. 7. 외부에서 접속하고자 하는 로컬 서버를 실행한다.(httpL//localhost.3000) 8. C:\Users\jiyoon\AppData\Local\ngrok에서 아래의 명령어를 입력한다. C:\Users\jiyoon\AppData\Local\ngrok>ngrok start --all 9. 'https://7809-125-..
BFS 넓이 우선 탐색
·
알고리즘 풀이
1. 이진트리 넓이우선탐색(BFS) 출발지에서 도착지까지 가는 최단거리를 구할 때 사용한다. 2. 문제풀이 5에서 시작해서 -1, +1, +5를 해서 4, 6, 10을 만든다. Level 2인 4로 가서 3, 5, 9를 만드는데 5부터 다시 하면 무한루프를 돌기 때문에 이미 지나친 곳은 제거해준다. 그럼 Level 2는 3, 9, 7, 11, 15가 된다. 도착지인 14가 없으므로 Level3으로 간다. 2, 8, 14,... 진행되는데 14가 나왔으므로 끝낸다. function solution (s, e) { let answer = 0; let ch = Array.from({ length: 10001 }, () => ); let queue = []; queue.push(s); ch[s] = 1; let..
Teams Desktop Application에서 로그인 팝업창 띄우기
·
Microsoft
일단 페이지가 총 세개가 필요하다. https://docs.microsoft.com/en-us/microsoftteams/platform/tabs/how-to/authentication/auth-tab-aad Configure third party OAuth authentication - Teams Describes authentication in Teams and how to use it in tabs docs.microsoft.com https://github.com/OfficeDev/Microsoft-Teams-Samples/tree/main/samples/app-auth/nodejs/src/views/tab/simple GitHub - OfficeDev/Microsoft-Teams-Samples:..
Teams Desktop Application에서 개발자 도구 사용하기
·
Microsoft
1. Teams Desktop application에 접속한다. 2.상태표시바의 '···'아이콘을 클릭한다. 3. '정보 > '버튼을 클릭한다. 4. '개발자 미리보기' 버튼을 클락한다. 5.'개발자 미리 보기로 전환' 버튼을 클릭한다. 6. Teams Desktop Application이 재시작된다. 7. Microsoft 상태표시줄에서 '^' 아이콘을 클릭한다. 8. 'teams app' 아이콘에 우클릭한다. 9. '열기 DevTools' 버튼을 클릭한다. 10. 확인 만약, '개발자 미리 보기' 버튼 조차 보이지 않는다면, 아래의 순서에 따라 진행해보자. 1. Teams Admin Center에 접속한다. 2. LNB에서 'Teams앱' 선택 > '정책 설정'을 선택한다. 3. '앱 설정 정책' 페..
리덕스 이해하기 - 1
·
React
개념 미리 정리하기 1. 액션 상태에 어떠한 변화가 필요하면 액션이란 것이 발생한다. 이는 하나의 객체로 표현되는데, 액션 객체는 다음과 같은 형식으로 이루어져 있다. 액션 객체는 type필드를 반드시 가지고 있어야 한다. 이 값을 액션의 이름이라고 생각하면 된다. 그리고 그 외의 값들은 나중에 상태 업데이트를 할 때 참고해야할 값이다. { type: 'ADD_TODO', data { id: 1, text: '리덕스 배우기' } } 2. 액션 생성 함수 액션 생성 함수는 액션 객체를 만들어 주는 함수이다. 어떤 변화를 일으켜야 할 때마다 액션 객체를 만들어야 하는데 매번 액션 객체를 직접 작성하기 번거로울 수 있고, 만드는 과정에서 실수로 정보를 놓칠 수 있다. 이러한 일을 방지하기 위해 이를 함수로 만..