Backbone.js 如何按模型类别对主干集合进行分组,然后按模型等级对每个组进行排序
我正在学习David Sulc的木偶教程。 为了学习扩展它 现在让我们假设每只猫都有一个名字、等级和类别Backbone.js 如何按模型类别对主干集合进行分组,然后按模型等级对每个组进行排序,backbone.js,marionette,backbone-views,backbone-events,Backbone.js,Marionette,Backbone Views,Backbone Events,我正在学习David Sulc的木偶教程。 为了学习扩展它 现在让我们假设每只猫都有一个名字、等级和类别 AngryCat = Backbone.Model.extend({ urlRoot: '/api/cats', defaults: { name: "New Cat Name", category: "Red Cat" } }); 现在我想制作一个如下的复合视图: 第一类:红猫(03只猫) 第一类 第2类 第3类 第2类:蓝猫(02
AngryCat = Backbone.Model.extend({
urlRoot: '/api/cats',
defaults: {
name: "New Cat Name",
category: "Red Cat"
}
});
现在我想制作一个如下的复合视图:
第一类:红猫(03只猫)
第一类
第2类
第3类
第2类:蓝猫(02只猫)
猫X
猫Y
我怎样才能做到这一点。请帮忙 您可以使用
groupBy
功能,根据category
属性对您的AngryCat
模型进行分组,然后使用sortBy
按其等级对每个组进行单独排序(我假设您的模型有一个名为rank
的属性,该属性是一个数字)。我还假设您有一个名为angryCats
的初始集合变量,它包含您的模型
var groups = angryCats.groupBy(function(ac) {
return ac.get("category");
});
groups.each(function(group, key) {
// This will output the category name & item count
console.log(key + " " + group.length + " items");
group.sortBy(function (model) {
return model.get("rank");
});
group.each(function(model) {
// This will output the model name
console.log(model.get("name"));
});
});
此外,如果您希望按照模型的字符串属性(例如name
属性)对每个组进行排序,则需要从每个组中创建一个新的局部范围angryCats
集合(这些组是数组),然后按照链接的问题大纲对每个集合进行排序
希望这对您有所帮助您可以使用
groupBy
功能将您的AngryCat
模型按其bycategory
属性分组,然后使用sortBy
按其等级对每个组进行单独排序(我假设您的模型有一个名为rank
的属性,这是一个数字)。我还假设您有一个名为angryCats
的初始集合变量,它包含您的模型
var groups = angryCats.groupBy(function(ac) {
return ac.get("category");
});
groups.each(function(group, key) {
// This will output the category name & item count
console.log(key + " " + group.length + " items");
group.sortBy(function (model) {
return model.get("rank");
});
group.each(function(model) {
// This will output the model name
console.log(model.get("name"));
});
});
此外,如果您希望按照模型的字符串属性(例如name
属性)对每个组进行排序,则需要从每个组中创建一个新的局部范围angryCats
集合(这些组是数组),然后按照链接的问题大纲对每个集合进行排序
希望这对您有所帮助您可以通过将dcarson的代码与我在嵌套视图上的博客文章相结合来实现您的目标:
您需要向复合视图提供组的集合。复合视图的项目视图将是一个集合视图,显示该组中的CAT(即链接博客文章中的内容)。通过将dcarson的代码与嵌套视图中的我的博客文章相结合,您可能可以实现您的目标:
您需要向复合视图提供组的集合。复合视图的项目视图将是一个集合视图,显示该组中的猫(即在链接的博客文章中所做的事情)。您的排名是一个数字吗?是的,它是一个数字。你把我的问题完全改成了你想回答的方式。我的意思是我想从中创建一个木偶复合视图。现在我该如何渲染?或者,该视图将如何显示。我知道主干网的分组方法,我想询问如何在前端更多地使用它。顺便说一句,我的问题从来不涉及等级。我的意思是,我从来不知道如何根据等级进行分类。我改变了问题,因为我认为这是你想问的问题。你的问题很难理解,它的标题表明你希望能够分组和排序。你没有给出木偶代码作为你尝试的例子,所以我根据你所说的来解释这个问题。也许您可以用代码示例打开另一个专门关注木偶复合视图的问题?您的排名是一个数字吗?是的,它是一个数字。你把我的问题完全改成了你想回答的方式。我的意思是我想从中创建一个木偶复合视图。现在我该如何渲染?或者,该视图将如何显示。我知道主干网的分组方法,我想询问如何在前端更多地使用它。顺便说一句,我的问题从来不涉及等级。我的意思是,我从来不知道如何根据等级进行分类。我改变了问题,因为我认为这是你想问的问题。你的问题很难理解,它的标题表明你希望能够分组和排序。你没有给出木偶代码作为你尝试的例子,所以我根据你所说的来解释这个问题。也许你们可以用代码示例来回答另一个关于木偶复合视图的问题?我想网站已经关闭了。很抱歉,它应该是备份的。若并没有,请在几小时后重试(DNS问题,可能需要传播)。我认为该站点已关闭。很抱歉,它应该已备份。如果没有,请在几小时后重试(DNS问题,可能需要传播)。