오늘 배운것 window.location 객체 클립보드에 내가 현재 위치한 링크주소 말고 가고자하는 주소의 링크를 클립보드에 담을때 window.location 객체 중 origin을 활용 https://developer.mozilla.org/en-US/docs/Web/API/Location/origin location.origin - Web APIs | MDN The origin read-only property of the Location interface is a USVString containing the Unicode serialization of the origin of the represented URL. developer.mozilla.org https://hsmtree.wordpress...
회고
오늘 배운것 계정여러개 세팅 회사에서는 bitbucket계정을 사용하지만 개인작업이다 협업프로젝트는 깃허브계정을 필요에 따라서 쓸수 있도록 세팅이 필요했다. https://want-itschool.tistory.com/48 [Git] github 다수의 계정 사용하기 회사에서 사용하는 github 계정과 개인 계정을 같이 쓸 수 있다는 사실을 구글링을 통해 알아내고서 열심히 뻘짓을 하며 며 성공했다...! 나중에 다시 하려면 또 뻘짓을 할 것 같아서 포스팅하기로 want-itschool.tistory.com https://jeunna.tistory.com/109

오늘 배운것 ract-query에서는 요청을 보내고 새로운 데이터를 받아올때 어떻게 해야할까? mutataion을 수행한 이후,변경된 데이터를 화면에 보여줘야하는 상황이 자주 있는데. 예를들면 북마크거나 이미지 또는 로고를 변경하는 등 많은 상황에서 변경된 데이터값으로 화면에 띄어줘야하고 이를 위해서는 데이터를 refetch하여 최신화해주어야 한다. react-query를 통해 refetch할 수 있는 방법을 몇가지 확인했다. 1. useQuery refetch 활용 react-query는 데이터 가져오기를 담당하는 키와 함수를 사용하는 useQuery 라는 훅이 사용가능하며 useQuery라는 후크를 가져옴. 다음과 같이 사용할 수 있다. const { isLoading, isSuccess, data,..

오늘 배운것 MUI datagrid switch button 추가 marterial-ui datagrid활용시 row와 column을 주입하면 높은 완성도의 테이블이 구축된다. column객체에 열을 정의하는 요소를 넣어줄수있는데 정의된 property가 생각보다 많아 잘활용하면 내가 원하는대로 쉽게 테이블을 구성할 수 있다. 기본 데이터 외에 열마다 switch버튼을 추가해야 할경우 renderCell이라는 키에 화살표함수에 return값에 만들고자 하는 버튼또는 컴포넌트를 주입하면 원하는 데이터가 완성된다. const column=[ { field: 'status', headerName: '상태', type: 'boolean', width: 210, editable: true, renderCell: ..

오늘 배운것 클립보드 복사하기 버튼 작업목록 중 바라보고 있는 url을 공유하는 버튼이 필요했고 자바스크립트 navigator객체를 활용했다. navigator객체 안에는 다양한 프로퍼티가 존재하는데 clipboardApi를 활용하여 복사기능을 구현해봤다. const clipboardUrl = window.location.href; const copyUrl = () => { navigator.clipboard.writeText(clipboardUrl); return setSnackOpen(true); }; https://developer.mozilla.org/ko/docs/Web/API/Clipboard Clipboard - Web API | MDN Clipboard API 의 Clipboard 인터페이..
오늘 배운것 계획대로 행동하지 않으면 기하급수로 할일이 쌓인고, 악순환의 반복이다. 그동안 일도 많고 생각도 많았는데 다시 하나하나씩 루틴으로 복귀해야겠다. 사이드프로젝트를 하나시작했다. 익숙하지 않은 구조에 파악하는데 조금 애먹었다. 오픈까지 일정이 좀 남긴했지만 스케일이 점점커지게되니 프로젝트에 대한 관심과 시간을 좀더 할애해야할것같다. 텍스트필드 입력에 대한 예외처리를 너무 얕봤다. ㅜㅜ useState 동기화 useState의 비동기작업으로 validation을 통한 팝업처리(예외처리)에 곤욕을 겪었다. 기본적으로 이전state값을 콜백으로 전달하는게 가장 이상적이지만 로직이 복잡해지면 이것도 먹히지 않는다. 아래 글에서 나온 방법은 모두 실패... 결국 로직을 손봐서 해결하긴했다. https:/..
react-i18next 글로벌을 무대로 서비스하는 웹 애플리케이션은 국제화(i18n)가 필수다. 이를 해결하기 위해 반복적인 코드나 조건부렌더링으로 하드코딩할 수는 있지만 비효율적이다. react환경에서는 react-i18next를 설치하면 좀더 쉽게 해결이 가능하다. # npm $ npm install react-i18next i18next --save useTranslation (hook) 언어별 json파일을 만들어 두고 useTranslation훅으로 t function을 활용해 key을 활용하여 원하는 텍스트를 번역할수 있다. import React from 'react'; import { useTranslation } from 'react-i18next'; export function MyC..
오늘 배운것 fatal: the remote end hung up unexpectedly git에 파일 업로드시 자꾸 업로드가 실패되고 와이파이가 차단되길래 찾아보니 파일이 커서 차단되는 문제였다. https://codeground.tistory.com/35 fatal: the remote end hung up unexpectedly 오류 해결 열심히 commit한 내역을 push하려고 보니 갑자기 에러가 뜬다. send-pack: unexpected disconnect while reading sideband packet fatal: the remote end hung up unexpectedly 뭔 소린가 싶지만 구글링을 하니 단.. codeground.tistory.com 여기 블로그 참고해서 그대..
오늘 배운것 bitbucket pull request conflict Bitbucket을 쓰고 있는데 배포로 급히 수정된 코드들과 conflict가 생겨 해결되지 않으면 merge되지 않았다. 원격 origin에서 베이스 저장소를 내 저장소로 다시 풀해온뒤 conflict를 해결했다. https://velog.io/@ha0kim/GIT-conflict-%EC%8B%9C-%ED%95%B4%EA%B2%B0%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95 [ GIT ] conflict 시 해결하는 방법 Git 에서 Conflict 이란?개발자들이 각 feature을 따서 작업을 하고 master branch에 merge를 하게된다.merge 과정에서 파일의 이름이 같으면 충돌이 발생한다.파일..