据我所知,在基本级别使用ReactiveVar和Session变量之间的区别在于本地变量和全局变量。 ReactiveDict就像一个本地Session对象。
但是,如果您已经在使用ReactiveVar,为什么要使用ReactiveDict? ReactiveDict似乎没有ReactiveVar
的任何优势答案 0 :(得分:8)
以下是ReactiveDict
(RD)和ReactiveVar
(RV)之间的主要区别:
set
采用键/值对,它有delete
和clear
方法。最重要的是它允许您将反应数据集中到一个变量中。坦率地说,在大多数用例中,这并不是那么有趣,但请继续阅读。all
方法,它返回所有键/值对,并在每个键/值对上注册一个被动依赖。主要好处是,如果您有一组相关的被动数据,只要任何部分字典发生变化,您就可以触发autorun
。要使用一组RV执行此操作,您需要在每个RV上调用get
。在实践中,我发现了一些用于RD的用例,但在大多数情况下你都可以选择RV。
推荐阅读:ReactiveDict
source code
答案 1 :(得分:0)
" ...用于跟踪器的通用反应数据类型。"
"如果您为其构造函数提供名称,其内容将保存在Hot中 代码推送客户端代码更新。"