[Node.js] mongoose-sequence 로 숫자가 자동으로 증가하는 필드 만들기

개요 2021년 현재까지도 아주 활발하고 많이 이용되는 NoSQL 계열인 MongoDB, 그리고 Node.js 에서 MongoDB 관련 작업을 담당해주는 mongoose. 좋습니다. 저도 앞으로도 계속 사용할 것 같습니다. 그에 따라 편리성을 더해주는 라이브러리도 굉장히 많은데요, 특히나 항목이 추가할 때마다 자동으로 증가하는 필드를 제공해주는 라이브러리도 물론 있습니다. mongoose 도 이제 나온지 꽤 된 녀석이라서, 종종 오래된 라이브러리가 보이는데, 영어로 […]

[Vue 3.0] Popper.js 로 우클릭 메뉴 (Context Menu) 구현하기 (작성중)

개요 우클릭 메뉴(Context Menu)는 상황에 따라서 유용합니다. 모바일같은 경우 꾹 누르면 우클릭 메뉴가 뜨는 것처럼 할 수 있습니다. popper.js 는 가볍고 강력한, 특정 요소에 붙어 있는 팝업 요소(popover)를 만들기 좋은 라이브러리입니다. 이것을 이용해보도록 하겠습니다. 데모링크 : https://ezkorry.gitlab.io/simple-context-menu 소스코드: https://gitlab.com/EzKorry/simple-context-menu 설계 우클릭 메뉴를 설계할 때 고려해야 할 사항은 다음과 같습니다. UI 자체야 더 고급스럽고 사용성 좋게 […]

[Node.js] JSdoc 으로 타입 명시하여 VSCode 에서 편하게 코딩하기

개요 자바스크립트는 기본적으로 동적 타입 언어라서 어떤 변수에 대해 타입이 왔다리갔다리 합니다. 그래서 실제로 자바스크립트 코드를 실행시키는 시점에서는 해당 변수가 어떤 변수일지 확신할 수가 없으므로 실행 시점에 코드가 의도대로 진행할지에 대한 확신도 내리기 힘듭니다. 이는 프로젝트의 규모가 커질수록 큰 문제가 될 수 있어서 그런 점을 컴파일 타임에 보완해볼 수 있는 Typescript 가 등장하기도 했습니다. 하지만 […]

더블 트러블 – Mocking 으로부터 벗어난 이유 (Double trouble — why we decided against mocking 번역) (작업중)

본글: https://engineering.talkdesk.com/double-trouble-why-we-decided-against-mocking-498c915bbe1c 저자: André CarvalhoFeb 25, 2020 · 9 min read 그래서 목 객체로 한다면? “So what if we mock?” 잘 알려진 과학 조-크가 있다. 한 낙농업자가 우유 생산량이 저조했던 문제를 해결하기 위해 이론 물리학자에게 도움을 요쳥했다. There’s a well-known science joke about a dairy farmer who asks a theoretical physicist to help him solve […]

[Node.js] mocha + superagent 로 웹서버 테스트하기

들어가기 전에 테스팅에는 크게 두 가지 개념이 있습니다. 바로 단위 테스팅(Unit Testing)과 통합 테스팅((Integration Testing)가 그것입니다. 개념은 간단합니다. 단위 테스팅은 기능들을 최대한 잘게 쪼개어 그 기능이 주어진 파라미터나 상황 등에서 잘 동작하는지, 에러를 일으켜야 할 상황에서 에러를 잘 일으키는지에 대한 테스트입니다. 통합 테스팅은 단위 테스팅으로 테스트가 완료된 것들을 한꺼번에 모아 그 코드가 실제 프로덕션에서 돌아가는 […]

cloc – Node.js 에서 모든 파일의 코드 줄 수를 확인하는 법

개요 개발을 하다 보면 내가 얼마나 코딩을 했는지, 혹은 프로젝트의 코드 줄 수가 얼마나 되는지 궁금하곤 합니다. 이 수로 나타낼 유의미한 지표는 크게 없지만, 그냥 호기심에 검색해보게 되었습니다. 그랬더니 Node.js 에는 cloc 이라는 패키지가 있다는 걸 발견했습니다. 적용과 결과 리눅스와 맥은 perl 이 내장되어 있으므로 설치할 필요는 없지만 윈도우는 별도로 설치를 해야 cloc을 이용할 수 […]

[javascript] 스크롤에 따라 부드러운 애니메이션 구현하기

들어가기 전에 영감을 받은 사이트는 애플의 iPhone SE 를 소개하는 페이지였습니다. 저 부드러운 텍스트를 꼭 구현해보고 싶다!! 그런 생각을 했습니다. 하지만 정확한 스크롤 위치에 따른 부드러운 애니메이션을 구현하는 라이브러리는 찾기가 힘들었지요. 스크롤 애니메이션과 관련된 것들은 스크롤 하면서 콘텐츠가 화면상에 나타날 때 부드럽게 서서히 나타나도록 하는 애니메이션(AOS)이 주를 이루었지만 그게 원하는 것은 아니었지요. 그래서 직접 만들기로 […]

[Visual Studio Code] Live Share 클라이언트의 파일 탐색기에서 일부 파일이 보이지 않는 문제 해결하기

동기 Live Share 로 작업하고 있었는데, .gitignore 에 특정 파일을 추가하니까 해당 파일들이 감쪽같이 File Explorer 에서 사라졌다. 이게 무슨 일인가! 검색해보니 수정할 수 있는 방법이 있었다. 원인과 해결법 최초로 발견한 글에서 같은 문제를 겪는 사람이 있었다. 답변에 의하면, 보안상의 문제 때문에 특정 파일을 보여주지 않거나 하는 동작들이 Live Share 의 기본 동작으로 적용되어 있는데, […]

[Vue.js] 페이지 제목 바꾸기

들어가기 전에 본 글의 vue 버전은 2.0 입니다. vue 컴포넌트를 직접 만들 수 있고 vue-router와 vuex가 무엇인지 알고 기본적인 활용을 할 수 있는 분들께 적합한 내용입니다. 구상해보기 페이지 제목을 바꾸는 코드는 document.title = “제목”; 이렇게 쓰면 되기 때문에 아주 간단합니다. 하지만 우리가 원하는 것은 좀 더 일관성있고 효율적으로 페이지 제목을 관리하는 것입니다. 우선 페이지 제목이 […]

웹 접근성 인증 받는 방법과 후기

일평생 처음이고, 또 마지막도 될 수 있는 웹 접근성 품질 인증 심사에 대한 포스팅입니다. 일개 힘없는 프리랜서라서 더 잘하는 분들의 힘을 얻고자 인터넷에 관련된 검색을 많이 했었는데, 인증 후기를 도저히 찾을 수 없었습니다! 왜! 힘을 주시지 않는 겁니까… 그래서 최대한 삽질하지 않기 위한 몸부림을 기록하고자 키보드를 두들기게 되었습니다. 둥당기둥당. 웹 접근성은 무엇인가? 웹 접근성이란 쉽게 […]

Scroll to top