【发布时间】:2021-03-03 21:29:24
【问题描述】:
Svelte tutorial 在«反应性>更新数组和对象»一章中提到了以下内容:
文档提到更新对obj.foo.bar 的引用,但foo 变量是obj.foo 的单独副本。所以我看不到obj=obj 将如何更新对obj.foo.bar 的引用,因为bar 被声明为foo 的对象属性,而不是obj.foo。
有人能翻译一下这里的意思吗?至少为了澄清事情可能有一个错误需要提交,但我需要先了解这里的含义。
【问题讨论】:
-
foo 不是“obj.foo”的单独副本,它实际上是对它的引用,当您将对象分配给变量时,您只是分配它的引用(2 个变量将共享同一个对象)。要创建副本,您需要手动创建一个新对象并附加键或 JSON.parse(JSON.stringify())
标签: svelte