我有一個場景,我將數據從reducer傳遞到我的反應狀態。檢查未定義在反應中
數據:
{
"id": 1,
"title": "Test",
"content": {
"body": "sdfsdf"
"image": "http://example.com"
}
}
使用componentWillRecieveProps,這完全適用於檢索標題。
componentWillReceiveProps(nextProps) {
this.setState({
title: nextProps.blog.title,
})
}
但是,我很難檢索嵌套字段。當我這樣做:
componentWillReceiveProps(nextProps) {
console.log("new title is", nextProps.blog.title);
console.log("new body content is", nextProps.blog.content["body"]);
this.setState({
title: nextProps.blog.title,
body: nextProps.blog.content["body"]
})
}
我得到這個錯誤:
未定義體的錯誤消失我點擊調試器和內容加載後。無論如何,我可以解決這個問題嗎?
我試圖檢查未定義這樣的:
if (typeof nextProps.blog.content["body"] != 'undefined'){
但是,這也不行,我相信這是因爲博客是不確定的。
我覺得你的錯誤就在於,你的「身體」嵌套在「內容」 – naomi
@naomi謝謝!我將我的代碼固定到blog.content而不是僅僅是內容,那是什麼意思?我仍然遇到同樣的錯誤。 – lost9123193