2011-02-06 5 views
11

나는 Backbone.js를 고르려고 노력하고 있는데, 나는 사람들이 백본에서 효과적으로 컨트롤러를 사용하는 방법을 연구하고있다.컨트롤러 대 Backbone.js의 앱 레벨보기

나중에 컨트롤러가 프레임 워크에 추가되었으며 브라우저와 DOM의 설정 방식 때문에보기에 상당한 양의 컨트롤러 로직이 있다는 것을 알게되었습니다. 백본 웹 사이트의 TODO리스트 예제는 컨트롤러없이 구현됩니다.

그래서 백본의 컨트롤러 측면을 사용하는 방법이 확실하지 않습니다. 누군가가이 주제에 대해 밝힐 수 있다면 정말 고맙겠습니다.

감사합니다. Matt

+0

http://www.jamesyu.org/2011/01/27/cloudedit-a-backbone-js-tutorial-by-example/ – Heikki

답변

12

Backbone.View와 Backbone.Controller의 차이점은 Controller에는 라우트 구조가 있고 해시 태그 뒤에 URL 부분에주의를 기울이는 해당 Backbone.History() 수신기가 있다는 것입니다. (#).

기본적으로 이것은 Backbone.Controller가 북마크 가능한 URL을 제공한다는 것을 의미합니다. 해시 부분을 직접 작성하고 북마크 할 수 있으므로 Bookmark.Controller는 GETtable 항목을 표시하는 것이 의미가있는 객체 만 참조해야합니다.

나는 백톤 스토어 (Backbone Store)의 새미 튜토리얼 http://www.elfsternberg.com/2010/12/08/backbonejs-introducing-backbone-store/ 포트를 약간 썼다. GitHub 저장소 링크를 따라 가면 최신 버전을 얻을 수 있습니다.

+0

굉장한 글입니다. 고마워요! – Matt

+7

이것은 약간 날짜가 기입되었습니다. 더 이상 백본에 컨트롤러가 없으며 (현재는 '라우터'라고 함), 뷰는 실제로 컨트롤러가 기대하는 기능을 수행합니다. 실제보기는 DOM 뿐이며 DOM 라이브러리의 모든 기능을 업데이트 할 수 있습니다. –

+1

그래, 차이점을 살펴보면 "컨트롤러"와 "라우터"사이의 이름이 거의 변경되지 않았으며 View는 항상 기본 컨트롤러 메커니즘이었습니다. 변경 사항은 일을 명확히하지만 (북마크로 라우트하고 싶다.), 근본적인 로직을 전혀 엉망으로 만들지는 않는다. –

관련 문제