Giter VIP home page Giter VIP logo

backbone.groupedcollection's Issues

Typo example front page

// removing elements animals.remove(animals.findWhere({name: 'cat'})); grouped_animals.pluck('id'); // ['black', 'green']

On the explanation of 'How does it work?'
In this code is it meant to read the animal as bird instead of cat that is removed?

Passing in filter as vc_options does not apply to grouped collection

I have a scenario in which I want to create a grouped collection from a real collection, but also apply a filter at the same time. For example, given the following collection:

var tasks = new Backbone.Collection([
  {name: 'bob', date: '02-19-2016', task: 'wash dishes'},
  {name: 'bob', date: '02-19-2016', task: 'read book'},
  {name: 'sally', date: '02-19-2016', task: 'walk the dog'},
  {name: 'bob', date: '02-20-2016', task: 'go to gym'},
]);

I want to only get Bob's tasks and group by date. Something like the following would be nice to do:

var groupedTasks = Backbone.buildGroupedCollection({
  collection: tasks,
  groupBy: function (task) {
    return task.get('date');
  },
  vc_options: {
    filter: function(task) {
      return task.get('name') === 'bob';
    }
  }
});

I looked around the code, and I think the reason why this doesn't work is because any filter options are overridden from this code.

My current solution is to first create a virtual collection with the filter I want, then pass it in as the collection for the grouped collection:

var virtualCollection = Backbone.VirtualCollection(tasks, {
  filter: function(task) {
    return task.get('name') === 'bob';
  }
});

var groupedTasks = Backbone.buildGroupedCollection({
  collection: virtualCollection,
  groupBy: function (task) {
    return task.get('date');
  }
});

Going to play around with this over the weekend, but figured I should raise an issue in case others are running into this.

Recursive Grouping

Hello pedro,

I discovered your VirtualCollection recently when I was actually searching for a solution for grouping my collections, so I'm amazed again, that you already have a solution ready.
Or at least a part of my solution..

I'm trying to allow the user to group the collection by different properties, which the user can select. However, then I'd like to group the resulting items again per group, based on a different property.

So, for instance I'd like to group my shopping list by shops, and then again by item type, so I can quickly find all things that are in one place.

Is this possible? If so, how would you recommend going about implementing this?

Publish to NPM

Unlike Backbone.VirtualCollection, I can't seem to find this package on NPM. Has it been published?

Leaking virtualcollection listeners

  • close_with option is not being passed to group_collection.closeWith
  • close_with option is not being propagated to the virtualcollections, so they're leaking listeners

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.