Vue用<br>自定义换行,用v-html渲染,hover的时候title也需要使用自定义换行或者显示一行用省略号展示,hover展示全部

哈喽 大家好啊,最近遇到一个需求:

需求一:用<br>自定义换行,hover的时候title也需要使用自定义换行

然后我便想到了用<br>自定义换行,然后用v-html渲染,则就正常显示了

但是title只能用文本,然后我百度到其他博主写的用\n可以实现title换行,然后我就用替换字符进行替换,以下是效果图和代码:

(一)实现效果

(二)实现代码:


<div class="wrapClass"  v-html="content" :title="replaceStr(content)">
  
<div>

{
  data() {
      return {
         content:"hhhh<br>oooo<br>ddsssss<br>ssss"
      }
    },
    computed:{
    
    },
    created() {
     
    },
    methods: {
         replaceStr(str) {
           return str.replace(/<br>/g,"\n"); 
       }
    }
}

需求二:

显示一行用省略号展示,hover展示全部,然后自定义换行

相关代码:


<div class="wrapClass" :title="content">
  {{replaceStr(content)}}
<div>

{
  data() {
      return {
         content:"hhhh\noooo\nddsssss\nssss"  // 原文用/n自定义换行,title就可以换行了
      }
    },
    computed:{
    
    },
    created() {
     
    },
    methods: {
         replaceStr(str) {
           return str.replace(/\n/g," "); // 将\n替换成空字符串
       }
    }
}

.wrapClass {
    white-space: nowrap; 让写的内容在一行显示,并不换行。 nowrap就是不换行的意思。
    overflow: hidden; 让写的内容部分的溢出部分隐藏。
    text-overflow: ellipsis; 让溢出的前一个文字显示省略...
}

(三)参考原文:

vue -- title属性换行_vue设置title换行-优快云博客

正则替换字符串replace()方法超详细用法-优快云博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值