前记: css
排版记录,未免太耽误时间,我就简单的来,下面是一个vue 过滤器的写法,demo 演示,限制一个字符串的长度。html
vue filter 的官网介绍 https://cn.vuejs.org/v2/guide/filters.html 前端
下面就具体拿本身的一个例子介绍:vue
某个filter.jsweb
// 限制汉字的个数 export const limitWordLength = Vue.filter('limitWordLength', (str, length, sufix) => { /* eslint-disable */ let r = /[^\x00-\xff]/g // 双字节正则 let m if (str.replace(r, '**').length > length) { m = Math.floor(length / 2) for (let i = m, l = str.length; i < l; i++) { if (str.substr(0, i).replace(r, '**').length >= length) { return str.substr(0, i) + sufix } } } return str })
而后在某一个组件中引用 ide
限制是26个字符,对应的汉子就是13个,若是超出就用 ... 替换。ui
固然,在实际的应用中,想这种限制汉字的个数,达到前端展现的话,能够用下面的css ,替换,目前在主流的设备上是能够兼容的,若是不是很是兼容低版本的,可直接用css代替过滤器:spa
.news-cont { font-size: 12px; color: #747474; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }