尝试随机化集合中对象的顺序时遇到问题。
这是我尝试过的代码:
console.log(this.collection);
shuffled = this.collection.shuffle();
console.log(shuffled);
这是控制台输出(使用包含3个项目的测试集合):
child {models: Array[3], length: 3, _byId: Object, url: "/myurl/myid", _listenerId: "l7"…}
_byId: Object
_events: Object
_idAttr: "id"
_listenerId: "l7"
length: 3
models: Array[3]
__proto__: Surrogate
[child, child, child]
0: child
1: child
2: child
length: 3
__proto__: Array[0]
正如你所看到的,Collection没有被正确地改组,而是创造了一个充满讨厌的孩子的新的无法使用的对象。
我想要做的就是随机化模型在集合中出现的顺序,然后将其传递给视图进行显示(我正在创建一个名为“randomize”的按钮,需要随机化项目的显示在集合中)。我认为这将是一项简单的任务,但此时我正在考虑创建一个全新的模型并在服务器上进行随机播放。
非常感谢任何帮助!
答案 0 :(得分:8)
console.log(this.collection);
this.collection.reset(this.collection.shuffle(), {silent:true});
console.log(this.collection);