0

我相信我对 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 自动更新。提前致谢!

4

0 回答 0