자바스크립트

ESM 지원 CommonJS로만 개발되던 많은 프로그램들이 ESM을 지원하는 경우가 점점 늘고 있다. 대표적인 예로 몇 가지를 들어보면 google Lighthouse, Express.js , Mongoose (MongoDB ODM)등을 들 수 있다. 국내에서는 카카오테크에서 작성한 CommonJS에서 ESM으로 전환하기를 보면 다음의 문장을 확인할 수 있다. 구글의 Lighthouse 10 버전은 모듈 시스템이 CommonJS에서 ESM으로 전환되었기 때문에 CommonJS의 require() 함수로는 ESM 시스템의 모듈을 불러올 수 없게 되어있다 CommonJS에서 ESM으로 전환하기 안녕하세요, FE플랫폼팀에서 FE 개발자를 위한 개발을 담당하는 Ethan입니다. 이 글에서는 운영 중인 서비스에서..
에러 $ C:\Test\node_modules\.bin\electron-builder --config ./buildConfig.json --win --x64 -p always • electron-builder version=24.9.1 os=10.0.22631 • loaded configuration file=C:\Test\buildConfig.json • writing effective config file=C:\build\builder-effective-config.yaml • packaging platform=win32 arch=x64 electron=28.2.0 appOutDir=C:\build\win-unpacked • downloading url=https://github.com/electro..
Next.js 14 Jotai latest 버전으로 업데이트 후 아래와 같은 메시지를 마주했다. Detected multiple Jotai instances. It may cause unexpected behavior with the default store. https://github.com/pmndrs/jotai/discussions/2044 원인 Jotai 를 사용하는 다른 Npm을 사용하는 경우 다양한 라이브러리에서 Jotai가 사용되어 생기는 경우일 가능성이 높다. 즉, 여러 Jotai 인스턴스들이 default store에 동시다발적으로 접근하는 경우에 발생하는 이슈. 배경 Next JS App router 기반으로 구현하고 별다른 라이브러리는 깔지 않았는데도 이런 이슈가 발생했다. Root ..
위 사례처럼 고정포트를 내부 로컬서버에서 사용해야하는 경우를 비롯해 중복으로 켜지면 곤란한 상황에는 무조건 하나의 인스턴스만 켜질 수 있도록 아래의 코드를 추가한다. // only one instance const insLock = app.requestSingleInstanceLock(); if (!insLock) { app.quit(); }
Electron Framework 를 VsCode에서 개발진행하는 경우 디버깅을 하기 위해서는 설정이 필요하다. 다음 그림과 같이 내부 .vscode 폴더를 만든 후 launch.json 파일을 만들어준다. launch.json 내용은 다음과 같다. { "version": "0.1.0", "configurations": [ { "name": "Debug Main Process", "type": "node", "request": "launch", "cwd": "${workspaceFolder}", "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron", "windows": { "runtimeExecutable": "${workspaceFo..
슬랙 API 를 이용하여, 슬랙 Bot 만들기 배경 회사에서 슬랙봇을 만들어야하는 상황이 발생했다. 요구사항은 간단하다. 구현해놓은 봇에게 특정 명령어를 입력하면 굳이 관리자페이지까지 접속할 필요없이 바로바로 즉각적으로 정보를 확인하는 기능만 있으면 됐다. 실제로 구현하면서 특정 IP 대에서만 가능하게 처리를 진행하고 봇 내부에 데이터베이스도 붙이면서 다양한 작업을 진행했지만 아무래도 회사에서 쓰려고 만든거기 떄문에 해당 코드를 공개할 순 없으므로 간단한 말따라하는 봇을 만들어볼까한다. 이정도 예제라면 충분히 이후에도 응용하여 다양한 봇들을 생산하는데 큰 이슈는 없을것으로 보인다. 파이썬으로도 구현해봤지만, 라이브러리 안정성은 Node js 쪽이 더 좋은 것 같아, Node JS 용으로만 작성을 진행했다..
npm-check-updates 라이브러리를 소개한다. node js든 java spring이든, python이든 이젠 개발할때 모든걸 밑단부터 만들 수 없는 몸이 되었다. 밑단부터 만들 수 도 없을 뿐더러, 만들 수 있다 해도 너~~무 시간낭비되는 탓에 근본이 되는 몇몇 라이브러리 정도 사용하곤 한다. npm-check-updates를 사용한다면 npm package.json 내에 걸려있는 dependency library들을 일일히 확인하지 않아도 명령어 한번이면 모든게 해결된다. 공식페이지 설치 $> sudo npm install -g npm-check-updates # 또는 $> npx npm-check-updates 사용법 # 대충 npm 프로젝트 경로 안으로 이동 $> cd /god-logge..
본 내용은 MacOS 환경에서 일렉트론빌드 사용시 별도 코드사인 인증서를 가지고 서명 처리하는 부분에 대해 다루고 있다. 사실 윈도우의 경우에도 별반 다를게 없고, 내용중엔 윈도우 관련 키값을 별도로 표시해두었으니 참고하여도 좋을 듯 싶다. Code Sign (코드사인) 인증서란 ? 프로그램 코드의 무결성을 보증하기 위한 전자서명이다. 코드사인 인증서는 제 3자에 의해 변경되거나 손상되지 않았음을 확인하는 방법으로 응용프로그램, Cab파일 서명, 드라이버서명, WHQL등 디지털 서명하는데 사용된다. 인증서를 통해 서명,회사 이름, 원하는 경우 시간서명이 포함되며 코드사이닝 인증서는 사용자가 설치 또는 시작 시 경고 메시지를 받지 못하도록 하여 보안에 이상적이다. (인증서 종류에 따라서는 맥의 경우에는 즉..
환경 M1 애플실리콘 - 맥미니 파이썬 - 3.11.3 노드 - v16.20.0 시도 npm install sharp 오류메세지 ➜ 360vr npm install sharp npm ERR! code 1 npm ERR! path /Users/god-logger/develop/360vr/node_modules/sharp npm ERR! command failed npm ERR! command sh -c (node install/libvips && node install/dll-copy && prebuild-install) || (node install/can-compile && node-gyp rebuild && node install/dll-copy) npm ERR! sharp: Detected glob..
기존에 잘 패키징(빌드)되던 electron project가.. sqlite3를 포함했다는 이유로 안된다. 인텔 맥, Apple 실리콘 맥, 리눅스까진 잘 되는데, 윈도우에서 이슈가 발생한다. 오류는 아래 사진과 같다. 더보기 yarn run v1.22.19 warning ../../package.json: No license field $ /Users/god-logger/apps/client/node_modules/.bin/electron-builder --config ./buildConfig_dev.json --win --x64 -p always • electron-builder version=24.3.0 os=22.4.0 • loaded configuration file=/Users/god-logg..
신·기록
'자바스크립트' 카테고리의 글 목록