javascript - 将 JSON 解析为 HTML
问题描述
我正在从 API 获取数据,数据的属性之一是对项目的描述,但JSON
响应是用 编写的HTML
,并且其中包含<a></a>
标签和其他 html 元素。我不想显示标签并让它们实际工作。
例如,这是它在屏幕上的输出:
“这里是<a href='https://www.google.com'> Link </a>
”
这应该是这样的:
“链接在这里 ”
我怎样才能做到这一点?
(我正在使用 Next.js)
这就是我显示数据的方式
<p>{description}</p>
解决方案
下面试试。dangerouslySetInnerHTML
是JSX
您需要的属性。
<p dangerouslySetInnerHTML={{ __html: description }}></p>
查看文档以获取更多信息
工作示例
function App() {
const description = "Here is the <a href='https://www.google.com'> Link </a>";
return (
<p dangerouslySetInnerHTML={{ __html: description }}></p>
);
};
ReactDOM.render(
<App />,
document.getElementById('react')
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/17.0.2/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/17.0.2/umd/react-dom.production.min.js"></script>
<div id="react"></div>
推荐阅读
- laravel - 从中间件检查 Auth::user()
- android - 如何解决 Gradle 无法解决 Android 工作管理器的错误?
- android - Glide - 他们的文档中的“isImagePosition(位置)”是什么?
- php - 上传的文件必须具有有效的图像格式,但格式为:multipart/form-data;边界=------------749c9bf517f13444
- presto - 在 presto 中计算偏度和峰度
- lua - Add to table only 10 values
- php - wp_tag_cloud 在简单页面上显示结果
- gradle - 多模块项目中的gradle继承
- android - 打开预先存在的 github 库时,Android 上的 CMAKE 和 NDK 出错。(使用 Windows 10)
- javascript - 从连续数字生成数字序列