这里讲一下,如何使用vue控制多行文字展开收起(也叫控制文字展开隐藏)。

效果:

这里设置了控制三行,如果超过三行会展示,“显示更多” 超出文字显示省略号。点击“显示更多”会展开所有文案,按钮变成“收起”

(未超出三行的时候)

(展开)

(收起)

代码实现:

{{introduce}}

查看更多

export default {

name: 'Spread',

data() {

return {

isShowMore: false,

isDescStatus: true,

introduce: ""

};

},

props: {

mes2: {

type: String,

default: ""

}

},

methods: {

showmoreDesc(e) {

let el = e.currentTarget;

el.previousElementSibling.classList[!this.isDescStatus ? 'add' : 'remove']('overflow-line');

el.classList[this.isDescStatus ? 'add' : 'remove']('more-collapse');

el.innerHTML = !this.isDescStatus ? '查看更多' : '收起';

this.isDescStatus = !this.isDescStatus;

that.isShowMore = true;

}

},

watch: {

mes2(val) {

this.introduce = val;

if (this.introduce.length > 75) {

this.isShowMore = true;

}

}

}

};

.m-content {

&.overflow-line {

display: -webkit-box;

-webkit-box-orient: vertical;

-webkit-line-clamp: 3;

overflow: hidden;

}

}

.btn-more {

color: #fff;

float: right;

color: #5383E7;

position: relative;

margin-top: rc(5);

padding-right: rc(33);

&.more-collapse {

&::after,

&::before {

top: 2px;

transform: rotate(180deg);

}

&::before {

top: 4px;

}

}

&::after,

&::before {

width: 0;

height: 0;

content: '';

position: absolute;

right: 0;

top: 7px;

border: rc(12) solid transparent;

}

&::after {

border-top-color: #5383E7;

z-index: 1;

}

&::before {

border-top-color: #1c2239;

z-index: 2;

top: 5px;

}

}

使用组件

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

vue中多行文本标签_vue控制多行文字展开收起的实现示例相关推荐

  1. vue控制多行文字展开收起

    这里讲一下,如何使用vue控制多行文字展开收起(也叫控制文字展开隐藏). 效果: 这里设置了控制三行,如果超过三行会展示,"显示更多" 超出文字显示省略号. 点击"显示更 ...

  2. vue中create 什么触发_vue中eventbus被多次触发(vue中使用eventbus踩过的坑)

    一开始的需求是这样子的,我为了实现两个页面组件之间的数据传递,假设我有页面A,点击页面A上的某一个按钮之后,页面会自动跳转到页面B,同时我希望将页面A上的某一些参数携带过去给页面B.(我知道,小参数的 ...

  3. vue中的浏览量_vue中前进刷新、后退缓存用户浏览数据和浏览位置的实践

    从列表页 ------> 详情页, 再从详情页 -----> 列表页 ,要保存上次已经加载的数据和自动还原上次的浏览位置 1. 缓存组件,vue2中提供了keep-alive.首先在我们的 ...

  4. vue 中的el表达式_Vue中vue.filter()的使用方法介绍(过滤)

    本篇文章给大家带来的内容是关于Vue中vue.filter()的使用方法介绍(过滤),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. Vue过滤器 {{msg |msgFormat}} ...

  5. vue中this.init用法_Vue中的this.$options.data()和this.$data用法说明

    问题 项目里遇到一个问题,用this.$options.data()重置组件data时,data()里用this获取的props或method都为undefined,代码简化如下: export de ...

  6. vue 中provide的用法_vue中的provide和inject

    阅读element-ui源码,发现在设计子组时件用到了inject属性,随即查了一下官方文档,得知vue在2.2.0版本里新增了provide / inject: provide 和 inject 主 ...

  7. vue 中provide的用法_Vue中使用provide和inject

    相信大家在工作中一定遇到过多层嵌套组件,而vue 的组件数据通信方式又有很多种. 比如vuex.$parent与$children.prop.$emit与$on.$attrs与$lisenters.e ...

  8. vue 中watch函数名_vue中避免使用函数来绑定依赖

    如果你正在使用vue编写业务,可能遇到一个数据比较多,他们都遵循相同的模式,需要在data里定义多个变量来绑定依赖,然后你不想在data里定义多个变量,在接口调回后每个都重新赋值,采用这种方式绑定依赖 ...

  9. js vue中得延时器_Vue.js实现时分秒倒计时

    我们平常浏览网页的时候,经常见到"距游戏公测1天2小时3分钟4秒"这样的倒计时器.时间如沙漏般一点点的减少,不仅能挑起用户的兴趣,而且让页面提升了一点逼格,还填补掉一些尴尬的空白位 ...

最新文章

  1. sscanf()函数的用法
  2. java堆和客栈_java中堆和栈的区别分析
  3. matlab图像信息熵交叉熵,【机器学习】信息量,信息熵,交叉熵,KL散度和互信息(信息增益)...
  4. 流量中转的服务器,你的服务器能承受多大流量
  5. android 友盟推送获取不到devicetoken,使用友盟消息推送中遇到的哪些问题--索引(开发者必读)...
  6. 让php来搞定一切!,ubuntu安装和配置php5
  7. numpy学习之创建数组
  8. mysql的粒度_MySQL中权限的粒度和时效性
  9. 模式识别的几种基本算法
  10. 关于C笔记使用体验和比较
  11. python:实现希尔密码算法(附完整源码)
  12. 四六级对计算机考研有影响吗,“考研”没过四六级,对考研有影响吗?
  13. HbuilderX 配置eslint规范 问题
  14. 中国古代十大杰出青年
  15. 亚马逊波音767货机坠毁 三人遇难
  16. 36氪发布《2021年中国电子签名行业研究报告》,法大大成行业头部代表
  17. DNS 劫持和DNS 污染
  18. penn treebank_Penn Manor致力于开源
  19. Verilog学习之数据大小端转换设计
  20. 标准cpci接口定义_CPCI数据总线接口的设计与实现

热门文章

  1. 51php 数据不同步,php避免循环查询数据库优化一对多查询
  2. Qt界面设计器中的界面预览与程序运行时界面不一样
  3. java中什么是task_20171018java总结——Spring任务调度task:scheduled-tasks
  4. 广播 消息 没有服务器,服务器节点消息广播
  5. python制作加密工具_Python制作钉钉加密/解密工具
  6. 用计算机表白我不喜欢你了,隐藏式表白,表白不一定要用“我喜欢你”这几个字...
  7. 移除镜像_这是否是你心目中的英雄联盟手游?镜像地图。水晶塔,传送移除
  8. linux程序无法获取cpu资源,Linux系统编程获取系统的CPU资源
  9. linux优化pdf,linux系统安全和优化.pdf
  10. 读保护_混合ASIL系统中不同安全等级模块间的边界保护