版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yingzizizizizizzz/article/details/83546078
目录
问题场景
ant design 是基于React实现的组件库,会将\n这样的特殊字符转成空格,但是我们想让数据显示在前端界面上,怎么做呢?
解决
首先,将data中的\n替换为<br >
因为ant design 直接将特殊字符转换成空格了,我们应将特殊字符自己处理一下
data = json.data.replace(/\n/g,'<br />');
其次,用dangerouslySetInnerHTML属性转义字符
经过上一步我们只是把data的特殊字符转成html能识别的字符,但是ant design是基于react的,所以直接显示的话不会转义,此时用dangerouslySetInnerHTML属性转义字符(注意:定义在组件属性上)
<p dangerouslySetInnerHTML={{ __html: logData}} />
拓展
html的转义序列 https://www.cnblogs.com/guozhe/archive/2013/11/06/3409985.html
< |
< |
小于号 |
> |
> |
大于号 |
& |
& |
和 |
' |
' |
单引号 |
" |
" |
双引号 |
js用replace替换字符 https://blog.csdn.net/cxws110/article/details/80007209
1、替换一个字符
taskName=taskName.replace(/<p>/,"");或者 taskName=taskName.replace("<p>","");
2、替换所有字符
taskName=taskName.replace(/<p>/g,"");
g代表所有
3、替换带/或者\的特殊字符</p>
此时需要用到转义字符\/
taskName=taskName.replace(/<\/p>/g,"");