【发布时间】:2020-03-26 09:12:04
【问题描述】:
我正在开发一个词频应用程序,用户可以在其中找到文本中最常用的词并更改该词并在 HTML 中显示整个文本的更改版本。
我创建了一个函数,您可以在其中创建一个 span 标记围绕已更改的单词,因此我可以提供一个类来添加一些 CSS 以突出显示它。
const updatedTextArr = text.map(word => {
const isSameWord = word === mostUsedWord
if (isSameWord) {
const spanNode = document.createElement("span")
const alteredWord = `foo${mostUsedWord}bar`
spanNode.append(alteredWord)
word = spanNode
return word
} else {
return word
}
const createString = updatedTextArr.join(" ").toString()
setTextData(createString)
})
但是以这种方式,当我 console.log 时,返回的文本数组中的更改单词显示为“HTML 元素”
当我显示“createString”时,它会在视图中显示与“HTML 元素”相同的更改后的单词。
我想知道将 span 标签添加到找到的最常用单词的更好方法是什么?
【问题讨论】:
-
所以你从函数返回?最后两行将如何执行?
-
我可以在 sn-p 中看到无法访问的代码。
标签: javascript html reactjs