VUE开发过程中用到的JS方法

news/2024/7/10 3:25:40 标签: vue, js

VUE开发过程中用到的JS String()方法

1、substring()
在这里插入图片描述
来源:https://www.w3school.com.cn/js/jsref_substring.asp

应用场景:前端展示对描述过多的文字不展示,当鼠标放上去时,以弹框的方式展示全部内容
实际效果:在这里插入图片描述
实现想法:利用antdv里面的文字提示插件tooltip,当文字描述大于x时,以弹框方式展示,否则全部展示。
代码:

<template slot="content" slot-scope="text">
 <a-tooltip v-if="text.length >= 15" :title="text">
   {{_ellipseText(text, 15)}}
 </a-tooltip>
 <span v-else>{{text}}</span>
</template>
// 隐藏过多文字
_ellipseText (text, num) {
   if (text.length > num) {
     return text.substring(0, num) + '...'
   }
     return text
},

貌似直接使用substring()该方法就行,封装成_ellipseText这个方法感觉没啥必要。
2、indexOf()
在这里插入图片描述
来源:https://www.w3school.com.cn/jsref/jsref_indexOf.asp
应用场景:多选场景中,在前端展示的的时候需要根据匹配对象id,展示其对应的value。比如在搜索的时候要多选,传给后端的ID是“100,101,102”,对应的value即在前端展示“哈哈”,“嘿嘿”,“哦哦”,实现方法可以是先获取这个参数对象
[
{
id:100
value:“哈哈”
},
{
id:101
value:‘嘿嘿’
},{
id:102
value:‘XX’
},
{
id:103
value:‘XX’
},
。。。
]
然后在方法内定义一个空数组,如果符合将push到数组中,最后返回。
实现代码:

_getDutyCenter (value) {
      let dutyCenterId = []
      this.selectedDutyCenter.forEach(item => {
        if (value.indexOf(item.id.toString()) > -1) {
          dutyCenterId.push(item.value)
        }
      })
      return dutyCenterId.join()
    },

这里的indexOf()大于 -1 来提供是否包含该字符串的功能,配合forEach()循环遍历,如果入参包含某对象的id,则将对象的value push到数组中。
3、split()
在这里插入图片描述
场景需求:antdv中的多选是以数组保存并展现的,间隔逗号隔开。但是保存在数据库的形式是字符串,后端再传给前端时也是字符串,那么在用indexOf()方法匹配时,就会出现问题。比如parm参数对象如下
[
{id:"-1",value:hhaha},
{id:“1”,value:heihei}
]
前端获取的value参数为"1,-1",那么使用value.indexOf(parm.id)时,会导致两个参数都会匹配上,我们的要求是1 匹配 hhaha,-1匹配heihei,所以使用split(","),将参数"1,-1",分割成数组
在这里插入图片描述
这样就能保证前端多选框的数据能正常显示。


http://www.niftyadmin.cn/n/1660511.html

相关文章

恭喜张童鞋,一位来自野战的最终却一次在咱这通过HCIE,对您或许会有点好处呢...

首先感谢白老师和军哥超级上心、负责的辅导。 之所以会报名考取HCIE证书&#xff0c;是因为我的周围有一群我超级佩服的同事们&#xff0c;他们对待工作、家庭及自我要求的处事风格使我很佩服。在这样一种氛围内&#xff0c;我也有了学习的动力。 因为一直是自学&#xff0c;在…

Python进阶:切片的误区与高级用法

2018-12-31 更新声明&#xff1a;切片系列文章本是分三篇写成&#xff0c;现已合并成一篇。合并后&#xff0c;修正了一些严重的错误&#xff08;如自定义序列切片的部分&#xff09;&#xff0c;还对行文结构与章节衔接做了大量改动。原系列的单篇就不删除了&#xff0c;毕竟也…

antdv 修改table中的样式

想要改变table中的column的样式&#xff0c;可以根据align来改变 {title: 操作,key: action,scopedSlots: {customRender: action},align: center,width: 140}但是有一点&#xff0c;比如说align left’就是将列标题以及本列的所有内容居中&#xff0c; 我想要实现这种效果。…

[bzoj 4241]历史研究

传送门 Description IOI国历史研究的第一人——JOI教授&#xff0c;最近获得了一份被认为是古代IOI国的住民写下的日记。JOI教授为了通过这份日记来研究古代IOI国的生活&#xff0c;开始着手调查日记中记载的事件。 日记中记录了连续N天发生的时间&#xff0c;大约每天发生一件…

antdv实现上传导入功能

需求&#xff1a; 上传单个excel文件&#xff0c;手动导入&#xff0c;针对某些特定字段做相应错误提示。 后端同学已经写好了相应的接口&#xff0c;不过我们这前后端分离有些离谱&#xff0c;直接给了一段代码。。。哈哈哈 后端&#xff1a; 代码&#xff1a;入参为file …

一周练习题

重定向和管道流练习1.将/etc/issue文件中的内容转换为大写后保存至/tmp/issue.out文件中答&#xff1a;cat /etc/issue | tr a-z A-Z > /tmp/issye.out 2.将当前系统登录用户的信息转换为大写后保存至/tmp/who.out文件中答&#xff1a;who | tr a-z A-Z > /tmp/who.out 3…

iOS下的 Fixed + Input 调用键盘的时候fixed无效问题解决方案

为什么80%的码农都做不了架构师&#xff1f;>>> https://www.haorooms.com/post/ios_fixed_input 做touchweb开发的时候&#xff0c;做头疼的是&#xff0c;电脑上面时候好的&#xff0c;有些手机上面也是好的&#xff0c;个别手机和浏览器出现问题&#xff0c;对于…

充一次电使用一年的手机_全地形没问题智能轮椅,支持远程控制,充一次电可以行驶16km...

Hi&#xff0c;大家好&#xff0c;欢迎走进新一期的cool创意&#xff0c;我是cool&#xff01;在以前对于行动不便的人来说&#xff0c;是很没有自信心的&#xff0c;因为他们站起来必须要旁人帮助&#xff0c;或者依靠拐杖&#xff0c;更别说下地走路会有多麻烦了&#xff0c;…