![](/img/trans.png)
[英]If/else statements just do not seem to be working in Javascript and i don't know what I am doing wrong
[英]I don't know where i am wrong with Js objects
我将道具传递给组件,并使用getDerivedStateFromProps收集组件,该组件正在接收组件,但分解时会给出未定义
static getDerivedStateFromProps(nextProps, nextState) {
console.log(nextProps.imgData);
console.log(nextProps.imgData.value);
if (nextProps.imgData.value[nextProps.index]) {
return nextState = {
name: nextProps.imgData.value[nextProps.index],
fileURL: nextProps.imgData.url[nextProps.index]
}
}
return null
}
对于第一个日志,它给出了输出:
imgData:{
url: ["https://firebasestorage.googleapis.com/v0/b/medkit…=media&token=xxxxxx-xxxx-xxxx-xxxx-xxxxxxx"],
valid: true,
value: ["xxxx-xxxx-xxxx-xxxx-1f45d20ffac3.png"]
}
第二秒它给出了:
[]
有人可以帮我吗?
我会尝试这样的:
static getDerivedStateFromProps(nextProps, nextState) {
let saved = nextProps.imgData;
console.log(saved);
console.log(saved.value);
if (saved.value[nextProps.index]) {
return nextState = {
name: nextProps.imgData.value[nextProps.index],
fileURL: nextProps.imgData.url[nextProps.index]
}
}
return null
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.