2015-01-29 10 views
0

그래서 두 가지 종류의 사용자, 즉 고객과 판매자가있는 앱을 개발하려고합니다. 이 앱은 두 가지가 서로 다른 종류의 탐색 바를 가지며 경로를 통해 다른 종류의 페이지에 액세스 할 수 있도록 설계되었습니다. 따라서, 나는 이것을 달성하는 가장 좋은 방법이 무엇인지 알아 내려고 노력하고 있습니까? 다음 해결책 중 하나를 생각 중입니다 : 1. 내 shell.html에서 구성 바인딩 또는 영역을 사용하고 컨테이너를 가지고 특정 조건에 따라 정확한 특정보기 (부분보기)가 주입되고 기본값 바인딩 컨텍스트는 일반적인 shell.js가 될 것입니다. 사실 : 그러나, 표시되는 탐색 모음 및 각 탐색 패널은Durandal에서 다양한 유형의 사용자를위한 다중 쉘 (보기 및보기 모델) 및 라우터

nav:true 

이 모두 판매자와 고객이 탐색을 표시하는 다른 경로를해야합니다 경로에 의해 결정된다. 이 방법을 사용하면이 제한을 해결할 수있는 방법이 있습니까? 2. 작성 바인딩을 사용하지만 shell.html과 shell.js에 바인드하는 두 개의 다른 뷰와 뷰 모델을 사용하는 경우. 즉, 라우터가 2 대있을 것입니다. 그러나 두 개의 라우터가 있고 앱에 여러 개의 메인 라우터가있는 것에 대한 게시물은 많이 읽지 않았습니다. 이 방법에 접근해야하는 또 다른 방법이 있습니까? 여러 개의 SPA를 생각하고 있었지만 모바일 앱이므로 효율적이지 않을 수도 있습니다. 어떤 도움이나 제안이라도 대단히 감사합니다!

답변

1

두 개의 별도 SPA를 개발할 수도 있지만 동일한 코드베이스를 많이 공유하도록 할 수 있습니다. 이 방법을 사용하면 재사용을 위해 코드를 모듈화해야하는 책임 외에도 특별한 일은 없습니다.

이 방법은 또한, 전역 줄이기 위해 광범위한 로직을 통합 할 필요가 없습니다 트림, 또는 사용자에 따라 웹 응용 프로그램 현재 로그인.

+0

감사 @EricTaylor을 증대 것입니다! 나는 당신이 옳다고 생각합니다. 사용자의 유형에 따라 웹 응용 프로그램을 조정하는 데 필요한보기 /보기 모델에서 많은 논리를 제거합니다. 여러 SPA를 btw로 갖는 단점은 무엇입니까? 또한 구성 호스트를 여러 라우터로 매핑하는 것이 좋은 대안이 될 수 있습니까? –

+1

@KendrickLay 근본적인 공유 코드베이스가 잘 설계되어있는 한, 아래쪽이 보이지 않습니다. 최상위 수준 모듈에만 라우팅을 사용하기 때문에 라우팅 문제에 관해 이야기하는 것이 어려울 것입니다. 그렇지 않으면 우리는 완전히 구성 적입니다. –

+0

감사합니다! 한 가지 질문은 여러 개의 SPA를 만들고 처음에 앱이 사용자 유형을보기 위해 로그인을 시도하는 사용자를 인증하는 것입니다. 앱 시작과 관련하여 그를 어떻게 적절한 SPA로 안내 할 수 있습니까? 앱을 구조화하는 방법은 처음에는 모든 사람이 고객 계정을 갖고 나서 판매자 계정으로 가입 할 수 있으며 판매자 계정에는 기존 기능 위에 추가 기능이 있습니다. –