我相信我对 Marionette 和 Backbone 有很好的理解,但是下面的问题让我很难过。我正在尝试在集合视图中使用木偶项目视图显示留言板,并且我有一种可行的方法,但我对结果不满意,因为它最终导致我在处理我的初始值后对新集合调用重置消息数组。
假设我有一个来自 Web 服务器的消息数组或骨干集合。例如
[{ user : "Alice", timestamp : 1, body : "message1" },
{ user : "Alice", timestamp : 5, body : "message2" },
{ user : "Bob", timestamp : 10, body : "message3" },
{ user : "Alice", timestamp : 20, body : "message4" }] etc.
我想以批量用户消息的形式显示消息,所以我会看到:
爱丽丝
- 消息1
- 消息2
鲍勃
- 消息3
爱丽丝
- 消息4
我怎样才能最好地使用 Marionette 实现这一目标?我目前对所有消息执行一次传递,构建一个如下所示的新数组:
[{ user : "Alice", messages : ["message1", "message2"] },
{ user : "Bob", messages : ["message3"] },
{ user : "Alice", messages : ["message4"] }]
然后我创建一个新集合,并使用上述数组调用重置。对于大量(~250)条消息,此“重置”需要很长时间(27 秒!!)。每批用户消息都是一个新的 ItemView,我在模板中使用句柄来迭代该批的消息数组。
我还希望这能够处理附加到初始数组末尾的另一条消息,并让 CollectionView 自动更新。提前致谢!