是否可以将单个项目添加到 vis.js 时间轴?

Is it possible to add a single item to a vis.js timeline?

我想将单个项目添加到 vis.js 时间轴,但这似乎不可能。我能得到的最接近的是 setItems,它将时间轴中的所有内容替换为新项目。有没有办法非破坏性地添加新项目?

通过代码追踪后,我发现以下工作:

var item = {
  id: 34654,
  type: 'background',
  start: new Date(2015, 04, 01, 02, 01, 29),
  end: new Date(2015, 04, 13, 06, 23, 22),
  content: 'New Item',
  title: 'New Item'
};

timeline.itemsData.getDataSet().add(item);

如果你想改变一个项目,只需调用

timeline.itemsData.getDataSet().remove(item);

在添加调用之前 - 它将通过其 ID 定位现有项目。

对我来说这很有效:

timeline.itemsData.add(myItem);