기타
-
Typescript promise generic type기타/메모장 2022. 8. 11. 22:30
문제 Javascript에서 Typescript로 넘어오면서 타입의 사용법을 조금씩 공부하고 있다. 그러면서 promise를 return 하는 경우를 타입으로 표현해야 하는 경우가 생겼다. promise의 경우 제네릭을 이용하여 어떠한 타입을 이후에 넘겨줄지를 미리 지정할 수 있다. 이때 promise에서는 resolve와 reject를 이용하여, 비동기적으로 결과값을 return 하거나, 에러를 return 할 수 있다. 여기서 에러값의 경우 보통 원래 return 하려는 타입과 아예 다른 타입이다. 따라서 promise에 사용하는 제네릭을 어떻게 해야 하나 고민했다. Promise와 같이 '|'를 이용해서 결과값 타입과 에러 타입을 동시에 표현해야 하나 싶었지만, 결론은 간단했다. 결론 그냥 Prom..
-
SVG에 background-image 적용하기기타/메모장 2022. 7. 20. 16:44
내가 svg를 주로 사용하는 이유는 웹 상에서 특정 형태를 자유롭게 그려낼 수 있기 때문이다. 따라서 이런 svg로 만든 특정 형태 안에 background-image를 적용해보고 싶은 경우가 상당히 많았다. 하지만 svg에서는 css의 background-image 속성이 적용되지 않는다. 따라서 아예 다른 방식을 시도해보려 한다. 아래에서 시도한 방식들은 모두 React(CRA)에서 사용된 방식이다. (기본적인 Html이 아니다.) 1. Clip-path svg를 이용해 Element를 생성하지 말고, 일반적인 div Element를 svg모양대로 잘라내는 설계도처럼 사용하는 방법이다. clip-path (CSS) clip-path 속성은 CSS에서 사용할 수 있는 속성이다. 해당 속성은 특정 범위를..
-
Passport session 작동 안함기타/메모장 2022. 7. 9. 00:55
지금까지 passport를 써오면서 아무 문제없이 여러 프로젝트에 로그인을 구현하였다. 근데 이번 프로젝트에서 갑자기 passport가 문제를 일으켰다. 분명히 아무런 문제없이 로그인이 성공했는데, 심지어 유저 정보까지 잘 받아오는데 성공했는데, 로그인 정보가 유지되지 않았다. 이건 분명히 세션쪽에 저장하는 데에 문제가 생긴것이 확실해보였다. 문제는 그 원인을 하루종일 찾지 못했다는 점이다. 해결법 서버와의 통신을 위해 react단에서 axios를 사용했는데, axios의 withCredentials 옵션을 true로 설정했어야 했다. 프로젝트 시작할 때 한번 세팅해두고는 건드리지 않는 부분이라서 그런지 한번 잊어버리니까 도저히 생각이 안났다. 진짜 예전 프로젝트 코드들 다 뒤져보면서 겨우 찾았다. ax..
-
JS 자식요소 이벤트 제어기타/메모장 2022. 5. 21. 16:31
currentTarget HTML의 부모 요소에 마우스 이벤트를 걸어 현재 마우스 이벤트가 적용 중인 target을 e.target과 같은 방식으로 확인할 수 있다. 하지만 이 경우 부모 요소 안에 자식 요소가 있는 경우, 마우스가 자식 요소로 간다면 target이 자식 요소로 변하게 된다. 따라서 실제 이벤트를 건 요소만 확인하기 위해서는 currentTarget을 사용하는 것이 적절하다. const parentElement = document.getElementById("parent"); parentElement.addEventListener("mousemove", (e) => { console.log(e.target); console.log(e.currentTarget); }); pointer-ev..
-
Unity 스크립트 기초 - 클래스기타/Unity 2022. 1. 10. 03:46
주의! 해당 포스트는 정제되지 않았습니다. 해당 주제에 대한 공부를 진행하며 동시에 정리한 글이기 때문에 잘못된 부분이 매우 많습니다. (잘못된 부분에 대한 지적은 댓글로 감사히 받겠습니다) 클래스 (Class) 유니티에서 스크립트 작성을 위해 사용하는 C#은 객체 지향 언어이다. 객체 지향 언어를 간단히 설명하면, 객체(Object)를 중심으로 하여 서로 상호작용하도록 구성하는 방식으로 프로그래밍하게 만들어진 언어라 할 수 있다. 이때 각 객체(Object)는 각각 자신만의 데이터와 함수를 가질 수 있다. 그리고 이러한 객체가 어떠한 데이터와 함수를 가지는지를 정의하는 것을 클래스라 한다. 이러한 클래스는 각 객체의 데이터에 해당하는 멤버 변수와, 함수에 해당하는 메서드로 구성된다. 이렇게 각 클래스를..
-
Unity 개발환경 세팅기타/Unity 2022. 1. 7. 15:59
주의! 해당 포스트는 정제되지 않았습니다. 해당 주제에 대한 공부를 진행하며 동시에 정리한 글이기 때문에 잘못된 부분이 매우 많습니다. (잘못된 부분에 대한 지적은 댓글로 감사히 받겠습니다) Unity 설치 Unity를 이용하기 위해 우선 유니티 공식 홈페이지에서 Unity Hub를 다운로드하여 설치한다. 유니티 허브는 유니티의 설치를 도와주고, 유니티 프로젝트를 새로 생성하거나 기존 프로젝트를 여는 등의 관리를 할 수 있는 프로그램이다. Download Download Unity now and get started with the world’s most popular development platform for creating 2D and 3D multiplatform experiences and ga..
-
Git 기본개념기타/Git 2021. 9. 22. 20:05
Git 이란? Git Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. Git은 소스코드 관리를 위해 고안된 분산 버전 관리 시스템이다. 리눅스 토발즈가 리눅스 커널 개발에 이용하기 위해 개발한 시스템으로, 현재 누구나 무료로 사용할 수 있는 Open Source로 관리되고 있다. 누구나 코딩을 하다 보면 새로운 기능을 업데이트하거나, 기존의 코드들을 유지 보수하면서 버그가 생기는 경우를 겪는다. 만약 심하지 않은 문제라면, 빠르게 해당 문제를 찾아 해결할 수 있을 것이다. 하지..