为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 MongoDB 中的字符串解析 HTML 标签?

如何从 MongoDB 中的字符串解析 HTML 标签?

米琪卡哇伊 2023-05-11 14:45:26
作为练习,我正在从头开始构建博客。我将我的帖子正文存储在 MongoDB 中,它存储为一个巨大的字符串。我在该字符串中添加了一些随机的 html 标签以进行测试。解析那个长字符串以便读取然后使用 html 标记的通常方法是什么?堆栈是:JavaScript / React / Express / MongoDB一些代码:    function Posts({ posts }) {  const postLis = posts.map((post) => {    return (      <li key={post._id}>        <h1>{post.title}</h1>        <p>{post.body}</p>      </li>    );  });  return <ul>{postLis}</ul>;}我的测试 JSON:{"posts": [{"_id": "5f7af2f468478387e792a522","title": "Welcome to Explore Edinburgh(express test 1)","featuredPhoto": "/432425521","date": "10th September 2020, 14:25","tags": ["edinburgh","explore edinburgh"],"body": "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum condimentum, quam vel<br>porta porta, elit mauris viverra diam, et pharetra nisl lorem<br>eget neque."},
查看完整描述

1 回答

?
慕田峪7331174

TA贡献1828条经验 获得超13个赞

您可以执行以下操作:


function Posts({ posts }) {

  const postLis = posts.map((post) => {

    return (

      <li key={post._id}>

        <h1>{post.title}</h1>


        <p dangerouslySetInnerHTML={{ __html: post.body }}></p>

      </li>

    );

  });


  return <ul>{postLis}</ul>;

}

如果因为无法确保内容安全而要解析它,可以使用html-react-parser


use { parse } from 'html-react-parser';


function Posts({ posts }) {

  const postLis = posts.map((post) => {

    return (

      <li key={post._id}>

        <h1>{post.title}</h1>


        <p>{parse(post.body)}></p>

      </li>

    );

  });


  return <ul>{postLis}</ul>;

}


查看完整回答
反对 回复 2023-05-11
  • 1 回答
  • 0 关注
  • 121 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信