在 html 的一部分中,我在 React 渲染函数中返回。“故事”(在渲染之前从状态中检索值)包含具有“url”等属性的 js 对象。单独记录整个对象和其他属性时,它们会出现在控制台上,但“url”属性不会。该 url 包含图像的 firebase 下载 url,当我获取它以将其加载到状态时,它存在于渲染函数之外。但是在我进入 render() 后就消失了。这是render() 中的一个片段。
<div className="Storysubmain">
{stories.map((story, idx) => {
console.log(story);
console.log(JSON.stringify(story));
console.log(story.url);
return (
<div className="story" key={idx}>
{story.image != null ?
<div className="storyimagebox">
<a rel='noopener noreferrer' target='_blank' href={story.link}>
<img src={story.url} alt='Related view' />
</a>
</div>
: ""
}
<div className="storydetails">
{story.khronos == null ?
"" : (
<span className="storykhronos">{story.khronos}</span>
)
}
<span className="storytitle">{story.title}</span>
<p>{story.text}</p>
</div>
</div>
)
})}
</div>
</div>
控制台输出如下:
因此,该对象将“url”属性显示为一个对象,而不是一个字符串。“url”在单独访问时未定义。我不知道发生了什么。结果我得到了图像的替代视图。提前致谢。