분류 전체보기
-
Blazor에서 카카오 지도 API 적용하기HelloJkw 개발 2022. 3. 5. 14:16
카카오 지도 API 개발하는 과정에서 겪은 일. blazor를 선택하면서 js를 쓸 일은 없겠거니 했지만, js로만 되어있는 라이브러리를 사용하게 되면 어쩔 수 없어 JS Interop을 사용해서 개발해야 한다. 처음에는 단순 함수로 개발했다. ts로 바꾸는 등 변화 과정을 기록한다. blazor project에 typescript를 적용하는 과정은 여기서 확인. 2022.03.04 - [분류 전체보기] - Blazor에서 typescript 사용하기 변경 전: javascript 기반, 단순 함수를 호출 javascript에 함수로 만들고, 전역변수를 두어 map 객체를 관리한다. 모든 변수는 전역변수로 만든다. (당연히) map이외에 marker 등 다른 함수와 섞이면서 코드 관리가 어렵다. 변수의 ..
-
Blazor에서 typescript 사용하기HelloJkw 개발 2022. 3. 4. 18:02
당연하겠지만 blazor에서 javascript를 사용할 수 있다. 하지만 typescript가 아니면 뭔가 불안하다. 버그가 속출할 것 같고.. 마치 그냥 C로 코딩하는 기분이랄까.. typescript를 적용하자. 참고문서 https://www.c-sharpcorner.com/blogs/type-script-with-blazor https://docs.microsoft.com/en-us/visualstudio/javascript/compile-typescript-code-nuget?view=vs-2022 가장 먼저 Microsoft.Typescript.MSBuild 를 설치한다. 설치가 잘 안됐다. 뭔가 뒤에서 하는데 csproj 파일엔 반영이 안되는 느낌.. MS 문서를 보고 그냥 csproj 파일..
-
Blazor에 카카오맵 연동하기HelloJkw 개발 2022. 2. 28. 22:35
당연하겠지만 blazor에서 javascript함수를 호출할 수 있고, javascript에서 blazor함수를 호출할 수 있다. Wasm뿐만 아니라 server side blazor도 가능하다. 참고: ASP.NET Core Blazor JavaScript interoperability (JS interop) 이 기능을 사용하면 카카오맵을 연동할 수 있다. 카카오맵 설명서: https://apis.map.kakao.com/web/ 연동하면서 생기는 이슈를 정리해본다. 기본적인 내용은 카카오맵 설명서를 참조하면 될 듯!
-
일기장 검색 기능 만들기HelloJkw 개발 2022. 2. 25. 17:52
사전 지식 내 홈페이지는 중간에 크게 바뀌었다. RDB를 사용하지 않는다. NoSql도 사용하지 않는다. Dropbox와 Azure storage를 사용한다. Cafe24 Linux self hosting 시절 dropbox 동기화를 사용했기 때문에 그냥 local에 있는 파일 전부 읽어서 (메모리에 올려서) 검색했다. 파일이 약 3000 개 쯤 있었는데 병렬로 읽고 SSD였기 때문에 아주 빠르게 검색결과를 반환했다. 검색기능이 전혀 어렵지 않았다. 오히려 검색식을 아주 강력하게 만들었었다. 자세한 내용은 너무 나가기 때문에 생략. Azure app service에서 검색 동기화 하는 방식이 아니고 파일 하나 읽으려면 rest api하나를 사용해서 읽어와야 한다. 내 일기는 4000 개가 조금 넘는다. ..
-
Database없이 홈페이지 일기장 구현하기HelloJkw 개발 2022. 2. 25. 17:15
보통 게시판이나 일기장을 만든다면 mysql 같은 RDB 떠올리기 쉽다. 그런데 개인적인 홈페이지는 변동이 많고, 갈아 엎기도 자주하고, 사용하던 서버를 버리거나, cloud system을 바꾸기도 쉽다. 그래서 나는 RDB나 NoSql을 사용하지 않기로 했다. 백업하기도 귀찮고, 백업한 결과물을 내가 읽을 수 없다. 최악의 경우에 내가 홈페이지를 운영하지 않더라도 일기쓰기는 계속 이어가고 싶다. 저장을 dropbox에 txt파일로 하기로 했다. (Dropbox를 database로 사용하는 것이니 제목은 틀린 말이긴 하다.) Dropbox의 장점 언제든 내 컴퓨터에서 읽을 수 있다. txt파일이기 때문에 별도의 프로그램 필요없이 일기를 열어볼 수 있다. 항상 동기화 되고 있기 때문에 백업해야 할 필요가 ..
-
홈페이지를 Blazor로 개발했더니HelloJkw 개발 2022. 2. 25. 16:42
홈페이지 주소 : https://hellojkw.com Server side blazor app으로 개발했다. front의 모든 코드가 backend에서 동작한다. front에서 backend의 모든 리소스를 사용할 수 있다. 다르게 표현하면 유저가 버튼을 클릭하면 클릭 이벤트만 서버로 넘어가고 서버에서 모든 로직이 돌아간 후 변경되어야 할 DOM 만 계산해서 front로 보낸다. javascript를 전혀 사용하지 않고 홈페이지 개발이 가능하다. SPA와 asp.net core를 잘 섞어 놓은 느낌이다.