Я работаю над проблемой, когда хочу отображать данные в приборной панели как в виде диаграммы (через perak:c3), так и в таблице (через aslagle:reactive-table). Моя проблема заключается в том, что данные извлекаются из коллекции в MongoDB, и ее формат мгновенно поддается описанию через c3, но его необходимо преобразовать в локальную коллекцию, которая будет использоваться пакетом реактивной таблицы, как предложено в this answer прежний вопрос.Реакция уровня шаблона в Meteor
Когда я меняю отображаемый набор данных, я хочу обновить график, а также таблицу. Это требует изменения значений в локальной коллекции, однако это замедляет работу, и вместо того, чтобы график плавно перерисовывался, на странице происходит замораживание, а затем отображаются новые данные.
Я создал образец проекта on GitHub here, так что проблема может быть легко реплицирована. Если запустить приложение и выбрать набор данных в вашем браузере, вы увидите именно то, что я имею в виду
Чтобы увидеть реактивное поведение я хочу сохранить в таблице перейти к client/templates/dashboard/dashboard.html
и просто закомментируйте шаблон таблицы {{> dashboardTable}}
и теперь изменить набор данных, чтобы увидеть, как график плавно перерисованы. По сути, я стараюсь, чтобы оба шаблона dashboardChart
и dashboardTable
отображались независимо друг от друга.
UPDATE
После предложение Майкла Флойда использования тайм-аут помог немного
Meteor.setTimeout(function(){createLocalCollection(data)},200);
но хотя диаграмма становится плавно обращается, когда таблица заканчивает быть заполнены, диаграмма еще раз. Похоже, что он перескакивает в какое-то промежуточное состояние, которое я не могу понять. Here is a video показывая, что я имею в виду.
Этот комментарий HTML на самом деле не мешает шаблону рендеринга - вместо этого используйте комментарий blaze: '{{! - comment -}}'. –