Интеграция с Backbone (устаревшая)
Интеграция с Backbone (устаревшая)
Эта статья описывает устаревшую интеграцию. Если вы начинаете с нул я, смотрите решения по интеграции фреймворков или настройку на чистом JS.
С версии 4.0 библиотека предоставляет специальное расширение mvc, которое позволяет интегрировать планировщик с библиотекой Backbone.
Если у вас есть приложение на основе Backbone и вы хотите добавить туда планировщик (при этом данные всё ещё управляются через Backbone), используйте следующую последовательность действий:
- Добавьте файлы dhtmlxScheduler в приложение:
<script src="../../codebase/dhtmlxscheduler.js" ></script>
<link rel="stylesheet" href="../../codebase/dhtmlxscheduler.css">
- Активируйте расширение mvc на странице:
scheduler.plugins({
mvc: true
});
- Инициализи руйте и настройте планировщик обычным способом:
scheduler.full_day = true;
scheduler.init("scheduler_here",new Date(2027,0,6),"month");
- Теперь вы можете создать коллекцию данных в Backbone и привязать планировщик к ней:
//you can use any model here
MyEvent = Backbone.Model.extend({});
EventList = Backbone.Collection.extend({
model:MyEvent,
url:"./data/backbone.json"
});
events = new EventList();
scheduler.backbone(events); //link scheduler to collection
После этого планировщик будет загружать данные из коллекции и отражать любые обновления в ней. Также любые изменения через UI планировщика будут вызывать соответствующие события в коллекции Backbone.
Как видите, это довольно просто. Всё, что вам нужно, — использовать метод backbone вместо обычных load или parse.
Метод backbone заставляет планировщик отражать все изменения данных в модели Backbone и наоборот. В качестве параметра метод принимает коллекцию Backbone.