Comments (1)
Hi @fedoraniumus,
While transaction()
is a documented method that can be present on a store, none of the stores in the dstore package implement it. It is simply presented as an option for those who need transaction support on a store.
It looks like we need to improve how our documentation speaks about Collection and Store. We use "Collection" and "Store" to describe different aspects of an object store.
A Collection represents a list of items and the query that produces the list of items. When you create an instance of dstore/Memory
, that instance is a Collection of all items in the store. When you call filter()
on that instance, a Collection is returned representing the list of items resulting from the filter operation. However, the only way the Collection's items are exposed is through the return value of the fetch
or fetchRange
methods or by using the forEach
method.
A Store is a Collection that also includes the ability to get
, add
, put
, and remove
individual objects. When you call filter
on a Memory
store, the resulting object is both a Collection and a Store. It is a Collection representing the filter query, and it is a Store in that it exposes methods for retrieving, creating, updating, and removing objects from the entire store. This provides a useful encapsulation where collection consumers receive a single object representing a query and, when available, the ability to add, update, and remove items from the store.
Does that help?
from dstore.
Related Issues (20)
- dstore/Memory#setData does not update grid. HOT 3
- question documentation - combination of stores memory/rest HOT 6
- Request _renderFilterParams fails when filter target contains parens
- cannot dojbuild that by bower_component HOT 2
- Trackable event incorrect when beforeId matched item being updated
- typedef not included in npm package or DefinitelyTyped registry
- filter issue with certain keys HOT 1
- Caching-store exception propagation
- allow filter-functions for legacy-stores
- dgrid/Rest does not parse arrays of JSON in get(1) HOT 1
- Cache mixin doesn't work with Rest without an object ID when adding when using the default Memory store for the cache
- IndexedDB fails to create index if you use a not default 'idProperty' HOT 1
- How to use filter for excluding a list of values? HOT 1
- bower.json should restrict to dojo 1.x HOT 4
- track() reports on data changed outside the collection HOT 2
- Commit 2288729 breaks existing code HOT 5
- Customizable error logging
- Dependency on @types/dojo
- Strict mode exception in Cache#_fetch() HOT 5
- RequestMemory does not honor HTTP headers
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dstore.