Reputation: 2960
I understand that the difference between using ReactiveVar and Session variables is, at the basic level, a matter of local vs global variables. ReactiveDict is like a local Session object.
But why use ReactiveDict at all if you're already using ReactiveVar? ReactiveDict doesn't seem to have any advantages over ReactiveVar
Upvotes: 3
Views: 2310
Reputation: 64342
Here are the main differences between ReactiveDict
(RD) and ReactiveVar
(RV):
set
takes a key/value pair and it has delete
and clear
methods. The bottom line is it lets you cluster reactive data into a single variable. Frankly, this isn't all that interesting in most use cases, but keep reading.all
method which returns all of the key/value pairs and registers a reactive dependency on each of them. The main benefit is that if you have a cluster of related reactive data you can fire an autorun
whenever any part of the dictionary changes. To do this with a set of RVs, you'd need to call get
on each of them.In practice, I've found a few use cases for RDs, but RVs are what you'll likely choose in most situations.
Recommended reading: the ReactiveDict
source code
Upvotes: 9
Reputation: 936
"... a general-purpose reactive datatype for use with tracker."
"If you provide a name to its constructor, its contents will be saved across Hot Code Push client code updates."
source: https://atmospherejs.com/meteor/reactive-dict
Upvotes: 0