1. 문제의 시작 웹팩 개발 서버(webpack dev server)를 'ngrok'로 외부에 노출 시켜서 접속했더니 'Invalid Host header' 에러가 납니다. 2. 'Invalid Host header'의 원인 웹팩 개발 서버에서는 호스트 검사를 해서 외부 접속을 차단하기 때문에 발생한다고 합니다. 3. 해결 방법 외부 접속도 허용하면 됩니다. 웹팩 개발 서버 설정에 다음을 추가합니다. allowedHosts: "all" 예전 버전(3 이전 버전)의 경우 disableHostCheck: true 를 추가해야 합니다. 이제 잘 접속됩니다. 마무리 웹팩 개발 서버로 운영하는 경우는 거의 없을 거 같은데 설정 하다보면 '그냥 운영해도 되지 않을까?' 라는 생각이 들게 합니다 ㅎㅎㅎ
비주얼 스튜디오를 업데이트(2023년 3월 기준 17.5.3 버전)했더니 잘되던 'JSDoc'주석을 자동 생성해주는 기능이 동작하지 않습니다??????? 원래는 '/**'를 입력하면 아래와 같이 'JSDoc'형식의 주석이 자동으로 생성됩니다. * 해결 방법을 알고 싶다면 '2. 특정 옵션이 원인이다.' 부터 보시면 됩니다. * 1. 삽질의 시작 결국 비주얼 스튜디오의 피드백 기능을 통해 문의했습니다. 근데 업데이트해 보라는 답변만 달아놓고 질문을 닫아버렸습니다;;;;;; 마침 17.5.3이 올라와 있어서 업데이트 했으나 마찬가지 ㅋㅋㅋㅋㅋㅋ 재설치 결국 재설치를 했더니 해결이 되었습니다. 백업된 옵션을 불러왔더니.... 근데 백업된 옵션을 불러오니 다시 같은 현상이 일어납니다???? 그냥 쓰자 결국 불편..
자바스크립트(Javascript)에서 'this'는 일반적인 언어에서의 'this'와 조금 다릅니다. 이것은 자바스크립 특성때문입니다. 0. 테스트 코드 작성 설명하기 전에 테스트에 사용할 코드를 작성해 봅시다. index.html 환영! 클릭!! 클릭2!! 클릭3!! 클릭4!! app.js export default class StartUp { A = "StartUp A"; B = "StartUp B"; constructor() { document.getElementById("btnClick").onclick = this.TestCilck; document.getElementById("btnClick2").onclick = this.TestCilck2; document.getElementById("bt..
.NET에서 별다른 옵션 없이 출력하면 파일이 여러 개가 생성됩니다. 참조가 많다면 더 많은 파일이 생성되죠. 단일 파일로 배포하는 방법을 알아봅시다. * 이 기능은 '.NET Core 3.0' 이상 버전에서만 사용할 수 있습니다. * 1. 게시 .NET에 있는 '게시' 기능이 있습니다. 이 기능을 이용하여 편하게 배포할 수 있죠. 프로젝트에서 오른쪽 클릭 > 게시 파일로 출력하면 릴리즈(Release) 폴더의 내용과 거의 같습니다. 그러니 파일로 배포하려는 경우 릴리즈 폴더만 압축해서 배포해도 상관없습니다. 2. 단일 파일 생성 파일로 배포하면 압축해서 하나의 파일만 배포해도 되니 신경을 안 쓰고 있었는데.... 아무래도 파일이 많다 보니 컴퓨터에 익숙하지 않은 사람들은 1) 실행파일을 찾지 못하거나 ..
언제부터인가.... 이미지를 클릭하면 무조건 레이어팝업으로 뜨는 것을 알게 됐습니다. 티스토리의 레이어 팝업 이미지는 확대축소가 안 돼서 안 쓰고 있던 건데 말이죠. 비활성화 하려고 플러그인을 확인했는데..... 없어서 찾아보니 플러그인이 삭제됐다고 합니다. 근데 기능은 왜 남아 있어???? 1. 레이어 팝업 제거 검색해보니 이미지를 감싸고 있는 'span'의 'data-lightbox'속성을 제거하면 동작하지 않는다고 합니다. 아래 코드 중 자신에게 맞는 코드를 선택해서 실행하면 됩니다. 실행 시점은 도큐먼트가 모두 바인딩 되고 나서입니다. 예> window.onload(), $(window).onload 등등 //Vanilla JS document.querySelectorAll("[data-light..
VS Code에 아두이노를 연결하여 개발하고 있는데..... 시리얼 모니터(Serial Monitor)에 입력이 안 됩니다??? 1. 아두이노 확장에서 입력하기 아두이노(Arduino) 확장에서 입력하는 정석인 방법은 1) 명령 팔레트(command palette)를 열고 2) 아래 명령어를 입력합니다. Arduino:Send Message To Serial Port 3) 전달할 명령을 입력합니다. ... 힘드네요 ㅋㅋㅋㅋㅋ 참고로 명령어 입력할 때마다 해야 합니다 ..... 마이크로소프트(Microsoft)에 분노하다. 그래서 그런지 시리얼 모니터에 입력 인터페이스 좀 만들어달라고 많은 개발자가 요청했습니다. 참고 : github - microsoft/vscode-arduino Issues : Feat..
비주얼 스튜디오(Visual Studio)에 훌륭한 아두이노 확장이 있긴한데.... 유료입니다. 그래서 그냥 'Arduino IDE'를 쓰고 있었습니다. 그런데 이번에 좀 덩치 큰 코드를 짜야 하는데 'Arduino IDE'는 너무 불편해서 'VS Code'에 세팅해서 써야 한다고 마음먹고 정리합니다. 이 포스팅에서는 가능하면 명령어가 아닌 UI로 작업합니다. 1. 확장 설치 VS Code의 확장에서 'Arduino'로 검색합니다. 'Microsoft'에서 만든 'Arduino'확장을 설치합니다. 설정(사용자) 확장 > Arduino > 확장 설정 을 선택하면 '사용자' 영역 설정이 나옵니다. '사용자'는 글로벌(전체) 설정을 말하는 것이고 '작업 영역'은 이 프로젝트의 영역의 설정을 말합니다. 같은 설..
EF(Entity Framework)에서 FK(foreign key)를 걸면 자동으로 List 타입을 관리해줍니다. FK가 개발 중에는 좋은데 서비스 중에는 좀 단점이 있고(특정 데이터를 수동으로 지우려면 연결된 FK를 순서대로 뒤에서부터 지워야 함.) 자동으로 바인딩 되다 보니 무분별하게 난발하게 돼서 속도를 다 까먹는 문제가 있습니다. (잘 관리하면 좋긴 합니다. ㅎㅎㅎ) EF는 FK로 묶인 데이터에 접근하면 인덱스로 전체 선택(select)해서 처리하기 때문입니다. ㅎㄷㄷ 그래서 저는 가급적 FK를 안 쓰고 수동으로 선택(select)해서 사용하는 방법을 사용합니다. 그러다 보니 EF에서 리스트형 데이터들은 어떻게 처리되는지 궁금해졌습니다. 1. 배열과 리스트 모델을 아래와 같이 선언하고 마이그레이..
자바스크립트(JavaScript)는 엄밀하게 말하면 오버로드(Overload)가 없습니다. 타입스크립트(TypeScript)는 IDE에서나 타입스크립트지 출력되면 자바스크립트입니다. 이런 특성 때문에 오버로드도 자바스크립트의 특성을 따라가게 됩니다. 그렇다면 타입스크립트는 오버로드를 어떻게 구현하고 있을까요? 1. 자바스크립트의 오버로딩(Overloading) 자바스크립트는 오버로드가 없습니다. "앵? 파라미터 다르게 해서 같은 이름으로 받는 거 쓸 수 있는데요?" 라는 말을 할 수 있겠지만 자바스크립트의 오버로드는 엄밀하게 말하면 오버로딩이 아니라 자바스크립트의 특성을 이용한 꼼수입니다. 아래 코드를 봅시다. function Main() { console.log("parameter 1 : " + Ove..
1. 오류 발견 지정된 파일을 찾을 수 없다는 에러가 나는데 수동으로 파일을 읽어도 잘 읽어지고, 'File.ReadAllText'를 써도 잘 읽어집니다. 웃긴 건 이걸 DLL로 만들어 쓰고 있었는데 원본 테스트에서는 아무런 문제가 없고, 에러 나는 타이밍은 파일을 읽을 때가 아니고 경로를 전달할 때입니다??? System.IO.FileNotFoundException: Could not load file or assembly 'Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'. 지정된 파일을 찾을 수 없습니다. File name: 'Newtonsoft.Json, Version=13.0.0.0, Cultu..