当前位置: 代码网 > it编程>编程语言>Javascript > 前端处理文本换行展示4种处理方法

前端处理文本换行展示4种处理方法

2024年11月03日 Javascript 我要评论
前言:后端传递了一大段包含了回车符的文本内容,前端展示的时候所有文字堆在一起,没有换行展示。以下方法中content为后端返回的文本内容方法一:“↵”符号在html

前言:

后端传递了一大段包含了回车符的文本内容,前端展示的时候所有文字堆在一起,没有换行展示。以下方法中content为后端返回的文本内容

方法一:

“↵”符号在html中会识别别为\r,\n等转义字符,所以我们可以使用\r\n去替换(.replace(/(\r\n|\n|\r)/gm, ’< br />'))
存在英文**<>**不显示

<div v-html="content.replace(/(\r\n|\n|\r)/gm, '<br />')"></div>

方法二:

使用

标签, 它会自动识别和处理后台返回的换行符号

<pre>{{content }}</pre>

方法三:

white-space样式

<div class="logdetail">{{ content }}</div>

.logdetail {
  white-space: pre-wrap;
  /* white-space:pre-line; */
}

white-space css 属性是用来设置如何处理元素中的 空白。

  • pre-wrap:连续的空白符会被保留。在遇到换行符或者< br >元素,或者需要为了填充「行框盒子(line boxes)」时才会换行。
  • pre-line连续的空白符会被合并。在遇到换行符或者< br >元素,或者需要为了填充「行框盒子(line boxes)」时会换行。

方法四:

(下面是在vue中实现的,所有框架思想一样)

<template>
    <div v-html="contentformat"></div>
</template>
<script>
export default {
    data(){
        return{
            //存储后端返回的,文本
            content:"",
        }
    },
    //计算属性,与data同级
    computed: {
        contentformat() {
          //this.content存储后端传回来的文本数据,就是要对这个数据进行处理
          let arr = this.content.split("");
          return arr
            .map((item) => {
              return item === "\n" ? "<br>" : item;
            })
            .join("");
        },
    },
    methods:{
        getdata(){
            ....
            this.content=xxx;
        }
    }
}
</script>

思路:将文本字符串转化为数组,然后将数组中“\n”换成浏览器正常解析的换行标签
即可。(后端传回来的“↵”就是\r\n),上面同样可以使用正则表达式来将字符串的换行符转换为< br >,那么就不用转换为数组了。

总结

到此这篇关于前端处理文本换行展示4种处理方法的文章就介绍到这了,更多相关前端处理文本换行内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com