전체 글 241

[ios] 맥 없어도 윈도우에서 아이폰 개발자도구로 확인하기

inspect.dev라는 프로그램을 깔면 좀 더 편한거 같은데 무료버전은 15분 제한이 걸려있음. 그래서 이것저것 찾다가 성공한 것 기록해둠. 참고한 글 https://sujakjil.tistory.com/145 1. node.js 깔기이 글을 들어왔다면 이정도는 깔려 있을듯. 2. cmd 관리자모드 실행윈도우+x또는시작메뉴-오른쪽 마우스-실행-cmd 3. 한줄씩 입력Set-ExecutionPolicy RemoteSigned -Scope CurrentUseriex (new-object net.webclient).downloadstring('https://get.scoop.sh')하지만 2번째 줄인 scoop이라는걸 설치하는 과정에서 에러가 났음. 안났다면 4번으로 이동하면 됨.나같은 경우 시뻘건 글자로 ..

나머지_개발 2024.10.18

[ts] TouchEvent 타입 문제

모바일에서는 터치 관련 이벤트가 click, mouseup 등이 아닌 touchstart, touchend 류로 들어옴. 그래서 이에 맞게 타입 처리를 해줬는데 instanceof로 타입 체크를 하는 도중에 TouchEvent가 아니라고 뱉어버리는 경우가 있음. 원인은- 브라우저 문제- touchstart이벤트인데 이벤트핸들러를 click으로 해버림- 타입 추론을 명시적으로 안해줌 라고 하는데 아니 나 다 제대로 했다고~~~~~~ 아무튼 타입이 뭐든 값은 제대로 나와줬으면 해서 type값을 직접 비교해서 clientX와 같은 좌표를 뽑아내고 있음.const getClientX = (event: MouseEvent | TouchEvent) => { if (event.type == 'touchend') {..

Javascript 2024.10.16

localhost 개발하는거 폰에서 보는 법

실제로 폰에서 테스트하면서 실시간으로 로그를 보고싶을때가 있음. 이때 쓰는 조흔 방법을 써봄. 1. 해당 사이트 들어감chrome://inspect/#devices저걸 그대로 주소창에 치면 된다. 그리고 usb 케이블과 핸드폰을 연결하면 좀 기다리면 아래와 같이 뭔가가 뜬다.  2. inspect 누름그러면 새로운 창이 뜨는데 아래와 창이 화면과 로그를 볼 수 있음. 이제 핸드폰으로 이것저것 해보면 로그가 찍힘. 단점은 뭔가... 좀 느림. 한창 이거 볼때는 괜찮은데 탭 껐다가 다시 켰다가 하면 뭔가 인식하는데 한참 걸려서 개빡침. 번외) 핸드폰으로 localhost:3000, 8080들어가니까 안뜨는데 어캄?ㅜcmd창 - ipconfig 입력 - IPv4 주소랑 포트를 조합해서 폰으로 접속하면 된다.만..

나머지_개발 2024.10.14

[키크론] K3 기계식 키보드 블루투스 연결 문제

이렇게 생긴 키보드고 엄청 가볍고 콤팩트해서 2년이 지난 지금까지도 잘 쓰고 있음. 그런데 처음 샀을때부터 블루투스 연결이 잘 안돼서 그냥 유선으로 쓰고 있었음. 그런데 오늘따라 선정리하다가 거슬려서 다시 블루투스 연결을 시도하다가 겨우 됐음! 기본적인 방법은 다음과 같음.1. 블루투스로 스위치 변경(1번키 점멸함)2. fn+1키 3초 이상 누름3. pc의 장치추가에 들어가서 블루투스 장비 찾기 근데 난 죽어도 안대서 초기화 버튼이라는 fn+j+z도 눌러보고 다시 실행해도 안됐었음. 결국 키크론 상담사를 통해 아래와 같이 진행함. 1. 펌웨어 진행https://keychron.kr/firmware/?board_name=firmware&search_field=fn_title&search_text=k3&vi..

기타등등/일상 2024.10.11

[typescript] 'unknown' 형식은 '~~' 형식에 할당할 수 없습니다.

어떤 array형 변수가 하나 있는데 나는 타입 지정 안했는데 자기 마음대로 unknown이라 생각함. 그리고나서 변수.length하니까 에러를 열심히 띄우더라. const a: any[] = arr.map((aa) => ({ ...aa, name: 'hi' }));return a.length > 0 ? a : [];그래서 a:any[] 이런식으로 타입을 지정해줘도 unknown형식은 자꾸 뭘 할당할 수 없다고 떠서 열받...  1. 아래쪽에서 직접 타입 선언해주기const a = arr.map((aa) => ({ ...aa, name: 'hi' }));return (a as any[]).length > 0 ? a : [];부모가 정신을 못차리니 차라리 아래쪽에서 as로 타입을 다시 설정해주면 된다.

[react][react-query] ~~유형에 'InvalidateQueryFilters' 유형과 공통적인 속성이 없습니다.

'"isLogin"' 유형에 'InvalidateQueryFilters' 유형과 공통적인 속성이 없습니다. invalidateQueries쓰는데 자꾸 키 에러가 뜬다 띠바 날 열받게하지마시오 1. 키 그대로 맞춰 써주기export const isLogin = () => { return useQuery({ queryKey: ['isLogin'], // 이거 생긴대로 });}return useMutation({ onSuccess: () => { queryClient.invalidateQueries({ queryKey: ['isLogin'] // 이렇게 써주기 }); }})

라이브러리 2024.07.11

[react][react-query] '() => void' 형식은 'MutationFunction<unknown, void>' 형식에 할당할 수 없습니다.

'() => void' 형식은 'MutationFunction' 형식에 할당할 수 없습니다. react-query쓰는데 mutationFn에서 자꾸 에러가 난다.. 어쩔티비아니냐거 1. promise 반환return useMutation({ mutationFn: () => { // 뭔가 하기 return new Promise((res) => res(true)); }, onSuccess: () => { }})mutationFn안에서 프로미스 해주셈 보통 api보내는건 어차피 자동반환되니까 상관없는데 아닌거는 따로 해줘야함.

라이브러리 2024.07.11