我想将单个项目添加到 vis.js 时间线中,但这似乎不可能。我能得到的最接近的是
setItems
,它将时间线中的所有内容替换为新项目。有没有办法非破坏性地添加新项目?
对我来说这有效:
timeline.itemsData.add(myItem);
这适用于旧版本的库。 eicul04 的答案对于新版本来说是正确的。
跟踪代码后,我发现以下方法有效:
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 找到现有项目。