我在选项中放置了一个表情,但存数据库出错了,试过tostring 或 JSON.stringfy/JSON.parse 都没有用

我在选项中放置了一个表情,但存数据库出错了,
试过tostring 或 JSON.stringfy/JSON.parse 都没有用,要怎么解决呢

img

数据库字符集选择 utf8mb4

  • 建议你看下这篇博客👉 :前端技术之:JSON.stringfy详细说明
  • 除此之外, 这篇博客: 为什么要使用JSON.stringify()和JSON.parse()中的 二、JSON.stringify()是否使用情况对比 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 未使用时:

    let abc = res.data.data.pages; //res是后端接口返回的数据,因为想要更好的说明情况在此处做了省略处理
    console.log('后端返回的数据_abc:', abc);
    sessionStorage.setItem('abc', abc);
    sessionStorage.getItem('abc');
    console.log('无JSON.stringify()_abc:', sessionStorage.getItem('abc'));
    

    在这里插入图片描述
    使用JSON.stringify()后:

    let abc = res.data.data.pages; //res是后端接口返回的数据,因为想要更好的说明情况在此处做了省略处理
    let def = JSON.stringify(res.data.data.pages);
    console.log('后端返回的数据_abc:', abc);
    sessionStorage.setItem('def', def);
    sessionStorage.getItem('def');
    console.log('有JSON.stringify()_def:', sessionStorage.getItem('def'));
    

    在这里插入图片描述
    这时候返回后的值就不会是[[Prototype]]: Object 了,而是会有数据,但是和我们最初从后台获取的值还是会有不同,这时候就要用上JSON.parse() 了。