Skip to content

Commit dda1e62

Browse files
committed
Adds summary for Anatomy of Backbone
1 parent c266bf4 commit dda1e62

File tree

2 files changed

+48
-1
lines changed

2 files changed

+48
-1
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
# Резюме
2+
3+
`var ИмяМодели = Backbone.Model.extend({});` - создание модели (логика);
4+
`var имяЭкземпляраМоедли = new ИмяМодели({что-нибудь});` - экземпляр модели;
5+
`var ИмяПредставления = Backbone.View.extend({});` - создание представления (отображения);
6+
`var имяЭкземпляраПредставления = new ИмяПредставления({});` - экземпляр представления; содержит свойство _model_ или _collection_ для связки с моделью и коллекцией соответственно;
7+
`var ИмяКоллекции = Backbone.Collection.extend({model: имяЭкземпляраМодели});` - создание коллекции (набор моделей);
8+
`var имяЭкземпляраКоллекции = new ИмяКоллекции();` - экземпляр коллекции;
9+
`var ИмяМаршрутизатора = Backbone.Router.extend({});` - создание маршрутизации на стороне клиента;
10+
`$(this.el).html() => this.$el.html()` - методы jQuery => Backbone.js;
11+
12+
13+
##Методы:
14+
* _ОБЩИЕ:_
15+
**extend({свойства})** - расширяет возможности mvc. Может содержать следующие свойства:
16+
* _defaults_ (Model) - устанавливает атрибутам значения по умолчанию; может определяться как функция (`defaults: function() {return объект }`);
17+
* _urlRoot_ (Model) - генерирует URL исходя из id;
18+
* _changed_ (Mode) - внутренний хэш, содержащий все атрибуты, которые были изменены с тех пор, как последний раз срабатывало событие "change";
19+
* _destroy_ (Mode) - уничтожает модель на сервере с помощью HTTP-запроса delete;
20+
* _render_ (View) - предопределяет отрисовку шаблона;
21+
* _tagName_ (View) - изменяет **el** (верхнеуровневый элемент, имеющийся в каждом представлении) с div на указанный;
22+
* _className_ (View) - добавление класса к el;
23+
* _id_ (View) - добавление id к el;
24+
* _template_ (View) - компилирует JavaScript шаблоны (`_.template('шаблон', [данные], [настройки]` - шаблон Underscore.js);
25+
* _events_ (View) - создаёт события (`events: { 'событие селектор': 'метод' }`);
26+
* _remove_ (View) - удаляет представление из DOM;
27+
* _model_ (Collection) - указывает класс моделей, которые будет содержать коллекция;
28+
* _add_ (Collection) - добавляет модель (или массив моделей) в коллекцию;
29+
* _remove_ (Collection) - удаляет модель (или массив моделей) из коллекции;
30+
* _reset_ (Collection) - заменяет коллекцию новым массивом моделей;
31+
* _length_ (Collection) - количество моделей в коллекции;
32+
* _routes_ (Router) - описывает соответствие паттернов URL функциям роутера с аргументами;
33+
* _start_ (History) - отслеживает события hashchange и диспетчеризирует роуты;
34+
**on('событие', callback, [контекст])** - привязывает callback к объекту, который будет вызываться всякий раз, когда сработает событие; `событие:конкретизация` - выбор одного события из множества; `событие:конкретизация событиеN:конкретизацияN` - обработка нескольких событий; контекстом может быть this;
35+
**trigger('событие', [\*аргументы])** - вызывает срабатывание события event (или группы событий — разделенных пробелами);
36+
* _МОДЕЛИ:_
37+
**get('атрибуты')** - отдаёт текущее значение атрибута модели;
38+
**set(\'атрибут\', \'значение\')** или **set({атрибут: 'значение'})** - устанавливает значения атрибутам (одному или нескольким);
39+
**fetch(['опции'])** - обновляет данные с сервера; получает дефолтный набор моделей с сервера и применяет его для этой коллекции;
40+
**save(['атрибуты'], ['опции'])** - сохраняет модель в базу данных и для синхронизации с сервером;
41+
**toJSON()** - возвращает копию поля attributes для превращения в JSON-строку;
42+
* _ПРЕДСТАВЛЕНИЯ:_
43+
**render()** - рендеринг;
44+
* _КОЛЛЕКЦИИ:_
45+
**map(collback)** - возвращает новый массив, полученный путём преобразования каждого элемента коллбеком;
46+
* _МАРШРУТЫ:_
47+
**navigate('url/фрагмент', [опции])** - сохраняет выбранное состояние приложения;

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@
8282
- [Collections](https://github.com/Preigile/CodeschoolHints/blob/master/JavaScript/Anatomy_of_Backbone/5.collections.md)
8383
- [Collections & Views](https://github.com/Preigile/CodeschoolHints/blob/master/JavaScript/Anatomy_of_Backbone/6.collection_and_views.md)
8484
- [History & Router](https://github.com/Preigile/CodeschoolHints/blob/master/JavaScript/Anatomy_of_Backbone/7.history_and_router.md)
85-
- Resume
85+
- [Resume](https://github.com/Preigile/CodeschoolHints/blob/master/JavaScript/Anatomy_of_Backbone/resume.md)
8686
+ Anatomy of Backbone.js Part 2
8787
- [More Models](https://github.com/Preigile/CodeschoolHints/blob/master/JavaScript/Anatomy_of_Backbone_js_Part_2/1.more_models.md)
8888
- [Customizing Collections](https://github.com/Preigile/CodeschoolHints/blob/master/JavaScript/Anatomy_of_Backbone_js_Part_2/2.customizing_collection.md)

0 commit comments

Comments
 (0)