Интеграция с Backbone

Начиная с версии 4.0, библиотека предоставляет специальное расширение mvc, которое обеспечивает плавную интеграцию планировщика с библиотекой Backbone.

Для приложений, построенных на Backbone и желающих использовать планировщик при сохранении управления данными через Backbone, можно использовать следующий подход:

  1. Добавьте файлы dhtmlxScheduler в ваше приложение:
    <script src="../../codebase/dhtmlxscheduler.js" ></script>
    <link rel="stylesheet" href="../../codebase/dhtmlxscheduler.css">
  2. Включите расширение mvc на странице:
    scheduler.plugins({
        mvc: true
    });
  3. Настройте и инициализируйте планировщик как обычно:
    scheduler.full_day = true;
     
    scheduler.init("scheduler_here", new Date(2019,0,6), "month");
  4. Далее создайте коллекцию данных Backbone и подключите к ней планировщик:
    //здесь можно использовать любую модель
    MyEvent   = Backbone.Model.extend({});
    EventList = Backbone.Collection.extend({
        model:MyEvent,
        url:"./data/backbone.json"
    });
    events = new EventList();
     
     
    scheduler.backbone(events); //связываем планировщик с коллекцией

После этого планировщик будет загружать данные из коллекции и поддерживать синхронизацию при любых изменениях. Аналогично, любые изменения, внесённые через интерфейс планировщика, вызовут соответствующие события в коллекции Backbone.

Этот процесс довольно прост. Ключевой момент — использовать метод backbone вместо стандартных методов load или parse.
Метод backbone гарантирует, что планировщик остаётся синхронизированным со всеми изменениями данных в модели Backbone и наоборот. В качестве параметра он принимает коллекцию Backbone.

Related sample:  Backbone integration

Наверх