gpt4 book ai didi

javascript - 在声明 polymer 元素的属性时,为什么值有时是返回 {} 的函数?

转载 作者:行者123 更新时间:2023-12-03 07:18:58 25 4
gpt4 key购买 nike

我很好奇的部分是为什么要使用

value: function() { return {}; }

代替

value: {}

示例代码如下:

<script>
Polymer({

is: 'polymer-demo',

properties: {
data: {
type: Object,
notify: true,
value: function() { return {}; }
}
},

});
</script>

最佳答案

这在 example 中有解释:

When initializing a property to an object or array value, use a function to ensure that each element gets its own copy of the value, rather than having an object or array shared across all instances of the element.

虽然您可以使用 {},但这将是每个元素共享的同一个对象,因此如果一个元素的值发生变化,所有其他元素都会看到应用于它的相同更改.这不是你想要发生的。通过使用函数,将为每个元素调用该函数,并且每次调用都会产生一个新的独立对象。然后,突变将仅应用于该单个元素而不会影响其他元素。

关于javascript - 在声明 polymer 元素的属性时,为什么值有时是返回 {} 的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41069816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com