저는 그것이 그렇게 중요하지 않다는 것을 알고 있습니다. 그러나 사람들이 그들의 모델/콜렉션/뷰/라우터 기능을 어떻게 명명하는지 궁금합니다.일부 backbone.js 명명 규칙은 무엇입니까?
답변
모두는 모델, 컬렉션 등이 무엇을 나타내고 어떻게 구조적으로 사용되는지에 달려 있습니다.
나는 일반적으로 내 모델에게 일반적인 이름을 부여하고 자신의 생성자 유형과 다른 모든 접미사
예 :
// model
var Animal = Backbone.Model.extend({});....
// collection
var AnimalCollection = Backbone.Collection......
// view
AnimalView = Backbone.View.extend(){})....
지금 당신은 단순히 그것에게 그것의 모델과 다른 전달하여 새로운 동물 뷰를 만들 수 있습니다 코드를 읽는 사람들은 모델이 나타내는 것을 쉽게 이해할 수 있습니다. 물론
var view = new AnimalView({ model: new Animal({name: 'Tiger'});
, 당신은 항상뿐만 아니라 단어 모델와 모델을 접미사 수 있지만이 모델은 등록하지 뷰의 일종 또는 단일 평면 객체를 나타 내기 때문에 그것없이 충분히 말을 생각한다 개체의 컬렉션입니다.
내가 그것을 읽을 수 동의하지만 난 모든 모음을 입력 좋아하지 않는다 그 mutch :) 그럼 왜 동물, 동물 및 AnimalView를 사용하지? 나는 대부분보기/컬렉션은 하나 이상의보기, AnimalListView AnimalDetailView 등 등을 가질 수 있기 때문에 View를 주로 유지하지만 컬렉션이 1 개의 큰 풀인 경향이 있습니다. 대개 부모 모델에 포함 된 다음 예를 들어 동물 및 myPets과 같은 적절한 이름을 얻습니다. – Sander
** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** 모델에 여분의 ** s **을 추가하거나 콜렉션에 하나를 두는 것이 너무 쉽기 때문에 복수형을 사용하는 것을 좋아하지 않습니다. 이는 불쾌한 버그를 유발합니다. 당신은 항상 콜렉션을 콜로 줄여 쓸 수도 있습니다. :피 – Trevor
- 어떻게 든 사람/문/문 목록과 같은 모든 컬렉션 이름이 복수형입니다.
- 클래스는 자본으로 시작하며 인스턴스는 낙타/밑줄을 사용합니다.
- 모델 이름, 컬렉션 등을 절대로 포함하지 마십시오.
- 반복의 이점이있는 c, m, r, v라는 해시에 모두 넣습니다. 백본 명명 규칙에 대한
var c.People = Backbone.Collection.extend();
var c.people = new c.People();
var m.Person = Backbone.Model.extend();
var m.person = new m.Person();
큰 자원은 여기에서 찾을 수 있습니다 : http://ricostacruz.com/backbone-patterns/#conventions – Andrew