Marionette.Приложение
The Application предоставляет средства для организации и инициализации других элементов и дерева представлений.
Application включает:
В дополнение к API MnObject, Приложение предоставляет два существенных дополнения. Простой жизненный цикл с start и единственным регионом для подключения дерева представлений.
Еще одно различие заключается в том, что Application cidPrefix mna.
Индекс документации
Инициализация приложения
При инициализации Application несколько свойств, если они переданы, будут прикреплены непосредственно к экземпляру: channelName, radioEvents, radioRequests, region, regionClass
import { Application } from 'backbone.marionette';
const myApplication = new Application({ ... });
Запуск приложения
После настройки приложения вы можете запустить все, вызвав: myApp.start(options).
Эта функция принимает один необязательный аргумент для передачи событий.
import Bb from 'backbone';
import { Application } from 'backbone.marionette';
const MyApp = Application.extend({
region: '#root-element',
initialize(options) {
console.log('Initialize');
},
onBeforeStart(app, options) {
this.model = new MyModel(options.data);
},
onStart(app, options) {
this.showView(new MyView({model: this.model}));
Bb.history.start();
}
});
const myApp = new MyApp();
myApp.start({
data: {
id: 1,
text: 'value'
}
});
Регион приложения
Приложение Application предоставляет единственный регион для подключения дерева представлений. Свойство region может быть определено несколькими способами
import { Application } from 'backbone.marionette';
import RootView from './views/root';
const MyApp = Application.extend({
region: '#root-element',
onStart() {
this.showView(new RootView());
}
});
const myApp = new MyApp();
myApp.start();
Это немедленно отобразит RootView и запустит обычные триггеры, такие как before:attach и attach, а также before:render и render триггеры.
region также может быть передан в качестве параметра при создании.
regionClass
По умолчанию Region используется для создания региона Application. Расширенный регион может быть предоставлен в определении Application для переопределения значения по умолчанию.
import { Application, Region } from 'backbone.marionette';
const MyRegion = Region.extend({
isSpecial: true
});
const MyApp = Application.extend({
regionClass: MyRegion
});
const myApp = new Application({ region: '#foo' });
myApp.getRegion().isSpecial; // true
regionClass также может быть передан в качестве параметра при создании.
Методы региона приложения
Приложение Marionette предоставляет вспомогательные методы для управления прикрепленным регионом.
getRegion()
Возвращает прикрепленный объект региона для приложения.
showView(view)
Отображает экземпляр View в регионе, присоединенном к приложению. Это выполняет View lifecycle.
getView()
Возвращает представление, отображаемое в прикрепленном region приложения. Если в приложении в данный момент не отображается представление, этот метод возвращает undefined.
© 2017 Muted Solutions, LLC
Licensed under the MIT License.
https://marionettejs.com/docs/v4.0.0/marionette.application.html