Vis.js - Как мне получить onInitialDrawComplete, чтобы изменить ReactiveVar? - PullRequest
0 голосов
/ 05 ноября 2018

Я пытаюсь показать мой загрузочный gif во время загрузки моей таблицы Vis.js.

Я прочитал документацию и почти каждый разговор по этому вопросу, но все еще есть вопрос.

Как передать переменную ReactiveVar или Session в функцию OnInitialDrawComplete в объекте параметров?

Template.visualScheduleEdit.onRendered(function () {
  this.autorun(() => { 

    var container = document.getElementById('VSvisualization');
    var options = {
      showCurrentTime: false,
      zoomable: true,
      min: minstart,
      max: maxend,
      start: minstart,
      end: maxend,
      zoomMax: 86399999,
      zoomMin: 10,
      editable: {
        add: false,
        updateTime: true,
        updateGroup: true,
        remove: false,
        overrideItems: false
      },
      onInitialDrawComplete: function() {
        Template.instance().tableLoading.set(false);
      }
    };

    let data = getMatches(Template.instance());
    items = new vis.DataSet(data);

    timeline = new vis.Timeline(container, items, groups, options);
    timeline.setOptions(options);
    timeline.setGroups(groups);
    timeline.setItems(items);
    console.log('done')
    Template.instance().formSubmit.set(false);
    Template.instance().tableLoading.set(true);
  }
});

Когда происходит мой Template.instance().tableLoading.set(true);, перед началом onInitialDrawComplete...Template.instance().tableLoading.set(false); наступает пауза в 2 секунды. Вот почему и когда мне нужно показать загрузочный GIF.

Прямо сейчас код попадает в загрузочный GIF и висит там. Например, функция onInitialDrawComplete не читается.

  • Обратите внимание, я пытался и предпочел бы использовать ReactiveVar вместо Session var.
...