2013-03-18 2 views
5

Ember-js를 처음 사용하면서 최근에 일부 블로그 항목을 거쳐 Tom Dale의 Ember-js 소개 비디오를 보았습니다.단일 페이지 응용 프로그램에서 라우터의 역할은 무엇입니까

라우터 Api가 새로 도입되었으며 Ember-js에서 가장 좋은 점은 Router Api가 응용 프로그램의 상태를 관리하는 데 사용되고 각 상태가 URL로 식별된다는 것을 요약하면 요약하면 우리가 하나의 URL만을 사용하는 곳에서 라우터의 역할은 '/'(인덱스)에 매핑되는 라우팅 항목이 하나만있을 것입니까? 그렇다면 우리는 라우터 API가 제공하는 이점을 잃어 버릴 수 있습니까?

+1

엠버 특정 좋은 설 m에서 찾을 수 있습니다 [엠버 라우팅 가이드] (http://emberjs.com/guides/routing/) – CraigTeegarden

답변

4

우리가 단 하나의 URL 만 사용하는 경우 라우터의 역할은 '/'(색인)에 매핑되는 라우팅 항목이 하나만 있습니까?

일반적으로 단일 페이지 응용 프로그램은 여전히 ​​URL을 사용합니다. 예를 들어 Gmail을 사용할 때 url 변경 사항을 확인하십시오. 따라서이 경우 단일 페이지 응용 프로그램은 URL 변경에 따라 브라우저가 새 페이지를 가져 오지 않음을 의미합니다. gmail과 마찬가지로 일반적인 ember 단일 페이지 응용 프로그램은 사용자가 응용 프로그램의 여러 부분으로 이동할 때 URL을 변경합니다. 엠버 라우터는 이것을 자동으로 처리합니다.

그렇다면 라우터 API가 제공하는 이점을 잃어 버릴 수 있습니까?

URL을 사용하지 않기로 결정하고 전체 시간 동안 "/"유지하려는 경우 라우터를 계속 사용할 수 있습니다. 그냥 "없음"

내가 여기 라우팅하는 관리 상태를 의미 이해 http://emberjs.com/guides/routing/specifying-the-location-api/

를 참조하지 않으려면 라우터의 위치 유형을 설정할 수 있지만 시간이 사용자의 시점에서 Gmail에 걸릴 예를 들면 상태의 집합에있을 수 있습니다 사용자는 로그인 상태에 있고 작성 상태 일 것입니다. 함께 존재하는 여러 상태를 관리하는 방법은 무엇입니까?

확실히 사실입니다. 엠버 라우터는 기본적으로 라우팅 (리프 노드)이 몇 가지 리소스 아래에 중첩되어있는 상태 차트입니다. 예를 들어 gmail의 경우 로그인 한 사용자 만 작성 상태가 될 수 있습니다.

의 Gmail URL : https://mail.google.com/mail/u/0/?shva=1#inbox

// Gmail Routes: 
* /mail - the mail application 
* /u/0 - connected account index 0 for the current user 
* ?shva=1 - http://stackoverflow.com/questions/1692968/what-is-shva-in-gmails-url 
* inbox - folder name 

EmberMail 버전 : https://mail.ember.com/mail/u/0/inbox

// EmberMail Routes 
this.resource('mail', { path: '/mail' }, function() { 
    this.resource('currentUser', { path: '/u' }, function() { 
    this.resource('account', { path: '/:account_id' }, function() { 
     this.route('folder', { path: '/:folder_id' }); 
    }); 
    }); 
}); 

당신이 날이 광범위하게 라우팅을 사용하는 예제 응용 프로그램을 가리킬 수 있습니다?

제가 알고있는 가장 좋은 예는 담론입니다.큰 타다 응용 프로그램이 타다 남은 라우터 사용하는 방법의 예를 들면 다음과 체크 아웃 :

+0

답변 주셔서 감사합니다. 여기서 라우팅이란 상태를 관리하는 것을 의미하지만 모든 시점에서 사용자는 예를 들어 일련의 상태에있을 수 있음을 이해합니다. Gmail을 가져 가라. 사용자가 로그인 상태에 있고 상태를 작성하는 방법, 함께 여러 상태를 관리하는 방법은 무엇입니까?, 라우팅을 광범위하게 사용하는 예제 응용 프로그램을 가르쳐 주시겠습니까? – flash

+0

확실한 - 업데이트 된 답변보기 ... –

관련 문제