javascript - 作为道具传递的反应状态不会在子组件中更新
问题描述
嗨,我想知道是否有人可以解释为什么当每个函数的返回区域作为道具传递给孩子时,第一个函数会更新道具并呈现孩子,但第二个函数中的一个小变化针对所需的确切值确实不是?我想我可能会以某种方式丢失原始参考,但不知道如何修复它。提前致谢
getAudioControls1(controls,rooms){
let zones = []
for (const key in controls) {
if (controls.hasOwnProperty(key)) {
const element = controls[key];
if (element.type === "InfoOnlyText" && element.name === "Synched") {
let room = this.getReqRoom(element.room, rooms)
element.roomName = room.name
zones.push(element)
}
}
}
return zones
}
getAudioControls2(controls,rooms){
let zones = []
for (const key in controls) {
if (controls.hasOwnProperty(key)) {
const element = controls[key];
if (element.type === "InfoOnlyText" && element.name === "Synched") {
let room = this.getReqRoom(element.room, rooms)
let rawZones = []
element.roomName = room.name
rawZones.push(element.roomName,element.statesValue.text)
zones.push(rawZones)
}
}
}
return zones
}
解决方案
在第一个示例中,您将element
(我猜它是一个对象)推送到zones
. 结果,您有对象数组。
在第二个中,您将数组推rawZones
送到您的zones
. 结果,您有数组数组。
推荐阅读
- json - Mac 终端:从 Json 文件中删除整列
- bash - check-mk 检查主机名和/或 ip 是否已经存在
- javascript - send_keys() 的替代方案 - selenium python
- c# - 在 Xamarin 表单中进行自定义相机预览
- excel - 在 VBA 范围内使用转换后的列字母
- java - 如何从 java 调用 Amazon Deequ hasDataType
- excel - 用于定义 VB 动作的 Excel 公式 - 请在单元格更改值后帮助刷新
- apache-spark - Apache Spark + Parquet 不尊重配置以使用“分区”暂存 S3A 提交程序
- c# - 有没有办法将 List.Contains() 和 string.StartsWith() 结合起来?
- sql - 如何让 SQL Server 只返回完全匹配的内容?