为什么es6在对象和React组件之间传播行为变化



我正在努力理解为什么es6对象在对象之间的传播行为不同,以及当它在React组件中用于传播道具时。

以下内容对我来说很有意义:

const a = {
a:1,
b:2
}
const c = {...a}

现在,变量c将具有与变量"a"相同的属性,键值对的格式为a:1,b:2。

这没有道理:

<Mycomponent {...a} />

将道具转化为CCD_ 1。为什么它以这种方式表现,而不是通常的键值对a:1, b:2

我想了解为什么这样做,这样我就能更好地理解语言。

我看过一些教程和文章,解释了传播在这两种情况下是如何工作的,但我还没有找到答案,为什么它的传播方式不同?

<真菌成分{…a}/>

将道具变成";a={1}b={2}";。为什么它以这种方式表现,而不是通常的键值对a:1,b:2?

但它正在执行a:1和b:2的键/值对。以下代码。。。

<Mycomponent a={1} b={2} />

告诉react创建一个看起来像{ a: 1, b: 2 }的道具对象。当您使用spread语法时,它告诉react创建一个看起来像{ a: 1, b: 2}的props对象。

最新更新