我正在尝试使用meteor rubaxa:sortable 包在我的meteor 应用程序中使列表可排序。
我尝试排序的列表实际上嵌套在类(class)中的文档中。看起来像这样...
{'id' : 123,
'cratedAt' : timestamp,
'resources' : object
}
资源对象看起来像这样
{'id' : 232, 'order' : 1}, {'id': 344, 'order' : 2} ....
我使用辅助函数从我想要显示的类(class)中提取一项。
return CurriculumList.findOne({_id: this.params._id})
然后在我的模板中使用{{#sortable items=resources}}
。输出就像 {{#each}}
一样,并且项目是可拖动和可排序的。但是,当我查看控制台时,我收到此错误:
rubaxa_sortable.js:1333
未捕获的类型错误:templateInstance.collection.findOne 不是函数
如何让这个包正确更新我的“订单”字段?
最佳答案
问题是 resources
是一个数组。如需解决方案,请参阅Issue #287中的解决方法。在 GitHub 上。
Issue #194 ,指向问题 #287,包含 a MeteorPad example与您给出的示例非常相似。
还有,打开GitHub Issue #539的人遇到相同的错误并将其等同于问题 #194 中的问题。
另请注意,根据 Issue #366 ,如果集合为空,您会得到相同的错误。
关于javascript - meteor 鲁巴萨 :Sortable Nested Field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33177299/