JavaScript中如何在vis.DataSet构造器中添加任意数量的id和content项
vis.DataSet 灵活生成任意数量条目的实现方案
初始化阶段动态生成指定数量条目
你可以封装一个数据生成函数,按需传入要生成的条目数量即可,不需要手动写死每个对象:
// 参数说明:count为要生成的条目数,defaultContent为content字段的默认值 function generateGroupItems(count, defaultContent = "") { const items = [] for (let i = 1; i <= count; i++) { items.push({ id: i, content: defaultContent }) } return items } // 示例:生成12个条目,直接传入构造器即可 var groups = new vis.DataSet(generateGroupItems(12))
实例创建后动态追加任意数量条目
如果是已经初始化完DataSet实例,后续要新增条目,可以直接调用vis.DataSet自带的add方法,支持批量传入数组:
var groups = new vis.DataSet() // 直接批量添加自定义的id和对应content groups.add([ {id: 101, content: "分类A"}, {id: 102, content: "分类B"}, {id: 103, content: "分类C"} ]) // 也可以封装追加函数,按需生成 function appendGroups(startId, addCount, contentPrefix = "") { const addItems = [] for (let i = 0; i < addCount; i++) { addItems.push({ id: startId + i, content: `${contentPrefix}${startId + i}` }) } groups.add(addItems) } // 示例:从id=200开始,追加8条content带前缀的条目 appendGroups(200, 8, "分类_")
注意:vis.DataSet要求id全局唯一,添加重复id会触发报错,你可以在添加前调用groups.get(待校验id)判断是否存在,避免报错
内容的提问来源于stack exchange,提问作者Muneeb
相关产品推荐
相关产品推荐

