session.equals在meteor中做了什么以及它用于什么以及它与session.set有什么不同?
答案 0 :(得分:7)
Session.equals有助于检查某些内容是否等于该值。例如。
Session.set("foo", "foo");
Session.equals("foo", "bar"); => false;
Session.set("foo", "bar");
Session.equals("foo", "bar"); => true;
它只是告诉您该值是否等于您指定的值,类似于执行Session.get("foo") == "bar"
Session.get
足够好了??如果它做得如此简单,那么它的重点是什么? Meteor使用反应性的想法,每次你改变帮助者必须重新运行的东西的价值。
如果您使用Session.equals
,则可确保帮助程序重新运行的次数非常少,因为更改只能是true
或false
。它是为了您的应用程序的效率而构建的,因此不必检查html&改变。
答案 1 :(得分:1)
The documentation makes this pretty clear
Session.equals
用于将会话中的键值与提供的值进行比较,类似于Session.get("key") === "compare to value"
。但是,文档建议您在这种情况下使用Session.equals
,以减少重绘次数。
Session.equals
根据比较结果返回true
或false
。
Session.set
实际上为会话中的给定键设置了值。这完全不同。