안녕하세요 c# 윈도우 응용프로그램 개발자입니다.
주로, 개발한 분야는 제조 MES 시스템입니다.
회사에서 사이트개발 작업(소규모 장비관리) 이 떨어져서 blazor wasm 으로 개발을 진행코자 합니다.
: 윈도우 MES SYSTEM은 현재 좌측 메뉴영역, 우측 컨텐츠 영역으로 구성되어 있고,
좌측 메뉴를 클릭하면, 우측 컨텐츠 영역에 Tab page 가 추가되어 화면이 구현됩니다.
blazor wasm으로 개발진행할 웹사이트도 동일한 기능구현이 가능한지요,
혹시 참조할만한 문서 및 소스가 있는지요.
답글 부탁드립니다.
감사합니다.
브라우저 새탭
브라우저 API에서 새탭으로 열기를 이용하여 브라우저 탭을 페이지 탭으로 사용할 수 있습니다.
window.open
그러나 위 API를 IJSRuntime 으로 호출하면, 서버 접속(또는 새로고침)과 같은데, 이는 탭을 열 때 마다 와즘 다운로드를 일으키기 때문에 사용자 경험이 좋지 못할 수도 있습니다.
CSS 탭뷰
부트스트랩 뿐만 아니라, 많은 CSS 프레임워크가 탭뷰를 지원합니다.
Navs and tabs · Bootstrap v5.0 (getbootstrap.com)
그런데, 이를 이용하면 페이지 컴포넌트가 탭뷰와 그 탭뷰에 포함될 모든 서브 컴포넌트도 모두 가지고 있어야 해서, 앱이 단일 페이지 컴포넌트(index.razor)만 갖는 구조가 됩니다.
블레이저 서버 고려
MES와 같이 자료 지향적이며 실시간성이 중요하다면, 블레이저 서버를 고려하는 것도 좋을 것이라 생각이 듭니다.
새로운 탭을 열 때, 와즘과 같은 대용량 다운로드가 없고,
자료의 업데이트 시, 일반적인 SSR(MVC, Web Pages) 보다 훨씬 가볍습니다.
무엇보다, 2 티어 설계라 프로젝트 관리 측면에서도 좋을 것이란 생각이 듭니다.
답변감사합니다.
우선 wasm 보다 블레이저 서버를 고려하도록하겠습니다.
자료검색중 정세일 운영진님의 강의중에 아래와 같은 실제사례를 보았습니다.
아래와 같이 구현을 하고 싶은데, 블레이저 서버로 구현할때 참조할수 있는 문서나 소스가 있는지요.
[자료출처] 닷넷 데브 유튜부 - NET Conf 2021 x Seoul 블레이저 서버 소개 및 사례
혼자서, BlazorXTabs 라는 라이브러리를 이용하여(GitHub - David-Moreira/BlazorXTabs: BlazorXTabs is an extended tabs component library providing various tab features for Blazor!)
블레이저 서버를 만들어보았는데요, 몇가지 변경하고픈 사항이 있는데, 아직 RouteView에 대한
이해도가 떨어져서리…;;; 하하하…
2개의 좋아요