Meteor React中的转义HTML标签
escaping html tags in meteor react
我有以下反应组件
homeComponent = React.createClass({
mixins: [ReactMeteorData],
getMeteorData() {
return {
homeData: homeContent.findOne()
}
},
render(){
let homeData = this.data.homeData;
return (
<div className="units-container home-container">
<h1>ply</h1>
<p>{homeData.homeCopy}</p>
<a href="{homeData.downloadLink}" className="btn home-button">Download</a>
</div>
)
}
})
键{homeData.homeCopy}
返回一个包含 html 标记的字符串。所以在这种情况下,假设它返回<strong>bold text</strong> not bold text.
我正在使用 react-template-helper
来同时使用 blaze 和 react,所以我希望我可以使用三重括号来转义 html,但这不起作用。我想我需要从反应中转义 html。
我怎样才能让反应从字符串中遵守这些 html 标签?
@mason505指出了正确的方向,但我认为这需要一些额外的信息。
首先,您必须创建一个函数来解析 html:
function escapeHTML(data) {
return {__html: data}
}
然后,您必须使用 dangerouslySetInnerHTML
调用它,但只能在自封闭的 html 元素上调用它,并且您必须使用 escapeHTML 函数将数据传递到dangerouslySetInnerHTML
中。完整的示例是:
function escapeHTML(data) {
return {__html: data}
}
homeComponent = React.createClass({
mixins: [ReactMeteorData],
getMeteorData() {
return {
homeData: homeContent.findOne()
}
},
render(){
let homeData = this.data.homeData;
return (
<div className="units-container home-container">
<h1>ply</h1>
<p dangerouslySetInnerHTML={escapeHTML(homeData.homeCopy)} />
<a href={homeData.downloadLink} className="btn home-button">Download</a>
</div>
)
}
})
相关文章:
- 如何在tinymce编辑器中将点击事件绑定到html标签
- 如何将具有相同功能的两个select html标签的两个JS组合在一起
- 带有html标签的Summernote内容
- 为什么我的HTML标签消失了
- 如何忽略单词like“”中的未使用空格;测试-文本”;同时构建html标签
- 在AngularJS中过滤-html标签中的文本
- 如何在另一个 html 标签内选择 web 元素硒 Web 驱动程序与 html 源
- 我怎么能"合并”;两个HTML标签
- JavaScript if else 语句来显示 html 标签
- 在 JavaScript 中实现 HTML 标签
- 如何用jQuery替换HTML标签的一部分
- 在javascript文件中编写html标签而不是“text”
- 窗口确认在 AJAX 帖子中打印 HTML 标签
- 如何在javascript函数中弹出php(与html标签混合)文件
- HTML标签的问题与Javascript一致
- 使用Javascript获取所有html标签
- 如何从JavaScript外包HTML标签
- Ckeditor:如何在mysql中避免使用Ckeditor中的html标签来节省时间
- 如何在 jquery 和 javascript 中检索 html 标签属性
- 如何获取html标签的字体大小