Reactjs 在数组周围包装html锚标记会在我的React组件中导致意外结果
我在react应用程序中使用了一个组件,可以在屏幕上生成随机游戏 它正在工作,但现在我正在尝试向游戏标题中添加一些html 当我这么做的时候,我的游戏标题是: [对象] 这里是我生成随机游戏的地方:Reactjs 在数组周围包装html锚标记会在我的React组件中导致意外结果,reactjs,Reactjs,我在react应用程序中使用了一个组件,可以在屏幕上生成随机游戏 它正在工作,但现在我正在尝试向游戏标题中添加一些html 当我这么做的时候,我的游戏标题是: [对象] 这里是我生成随机游戏的地方: const newGame = () => { return { title: <a href="#">gameTitleArray[Math.floor(Math.random() * gameTitleArray.length)]</a>, t
const newGame = () => {
return {
title: <a href="#">gameTitleArray[Math.floor(Math.random() * gameTitleArray.length)]</a>,
type: gameTypeArray[Math.floor(Math.random() * gameTypeArray.length)],
startDate: getDate(new Date(2019, 0, 1), new Date()),
endDate: getDate(new Date(2022, 0, 1), new Date()),
}
}
下面是gameTypeArray的一个示例:
const gameTypeArray = ['RPG', 'Western', 'Real-Time Strategy', 'Fantasy', 'First Person Shooter']
还有一个GameTilearray的示例:
const gameTitleArray = ['Future Agent','Human Universe','Chase of Resitution','Destroy of Resitution','Days and Glitch','Mayhem and Faith','Dynaworks','Crystalback','Fusionheart','Hellscape']
我甚至尝试创建一个单独的函数,如下所示:
function gameTitleArrayLink() {
const gameTitleArray = ['Future Agent','Human Universe','Chase of Resitution','Destroy of Resitution','Days and Glitch','Mayhem and Faith','Dynaworks','Crystalback','Fusionheart','Hellscape']
const title = gameTitleArray[Math.floor(Math.random() * gameTitleArray.length)]
const titleUrl = <a href="#">{title}</a>
return <div dangerouslySetInnerHTML={{ __html: titleUrl }} />
}
title: researchSummaryList()
很明显,我做错了什么,但我没有得到任何错误,只有[对象]
我做错什么了吗
谢谢 尝试在
{}
中包装数组值以将其视为表达式:
尝试将数组值包装在
{}
中,以将其视为表达式:
我认为您要渲染的项目 (
GameTilearray[Math.floor(Math.random()*GameTilearray.length)]
)
是一个对象而不是字符串我认为您要渲染的项目 (
GameTilearray[Math.floor(Math.random()*GameTilearray.length)]
)
是一个对象而不是字符串我试过了,但我仍然得到了[object object]什么是
gameTypeArray
?它只是另一个数组,而不是游戏名称。啊,那就是你的问题。不能渲染数组,除非它们是元素数组。JavaScript中的数组是对象。这就是为什么您会看到[object object]
。您需要引用一个将成为基元值的特定元素,而不是另一个数组/对象。如果您在问题中发布一个gameTypeArray
的示例,这可能会有所帮助。我尝试了,但我仍然得到了[object]什么是gameTypeArray
?它只是另一个数组,但不是游戏名称,而是游戏类型。啊,这就是你的问题。不能渲染数组,除非它们是元素数组。JavaScript中的数组是对象。这就是为什么您会看到[object object]
。您需要引用一个将作为基元值而不是另一个数组/对象的特定元素。如果您在问题中发布一个gameTypeArray
的示例,可能会有所帮助。
title: researchSummaryList()