位置: IT常识 - 正文

缺陷修改实践——replace函数的运用|思考?(缺陷修饰)

发布时间:2024-01-17
缺陷修改实践——replace函数的运用|思考? 目录介绍问题出现问题分析解决方法优化实现总结介绍

推荐整理分享缺陷修改实践——replace函数的运用|思考?(缺陷修饰),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:缺陷和变更管理系统,缺陷修改后一定会对软件带来有益的影响吗,缺陷修饰,缺陷修饰,缺陷管理与改错计划,缺陷改进指的是,改变缺陷,缺陷修改后一定会对软件带来有益的影响吗,内容如对您有帮助,希望把文章链接给更多的朋友!

大家好,我是清风。今天给大家分享一个项目中遇到问题解决问题的案例,编程其实就是一个思考的过程,缺少思考就没有灵魂,遇到问题先静下心去思考,想到方法后再去实践。我们要学会灵活变通去解决问题,掌握方法,这样才能举一反三,临危不乱,遇到所有问题都能很好地去解决。

事情是这样的,做的一个答题小程序,要求在后台编辑题目,编辑题目是用的textarea文本域,即输入的是文本内容,配置之后小程序里查询显示后台配置的题目列表。

当然在测试时后台去配置文本内容,小程序显示是没有问题的。因为配置的题目是纯文本,小程序里也是直接在text里显示的,没有问题。

后台配置题目

小程序显示题目

问题出现

问题往往只有在用的时候才会发现,用户或管理员的各种操作才能显现出各种问题。现在小程序里已经不能正常显示了,有些显示的是html格式富文本格式,有些不显示。显然和需求大相径庭,已经出现问题了。

问题分析

如上图,在用的时候因为是从word文档里直接复制过去的题目(事先在word里整理好了题目,由于各部门工作对接,先是在word文档进行审核),直接复制会把富文本内容也携带过去,携带过去的当然也有style样式,小程序里不显示的原因是富文本的字体颜色是黑色字体,和小程序面背景都是黑色,导致看不到文字。打开控制台调试,问题确实是这么出现的。

缺陷修改实践——replace函数的运用|思考?(缺陷修饰)

word文档编辑的题目会出现不同的富文本的样式格式,这都会导致小程序的不正常显示。

富文本的文字颜色是黑色,这导致的小程序页里题目的不显示。

解决方法

既然后台有可能出现富文本,我们直接把小程序题目的渲染方式换成富文本渲染,这样就算是纯文本也可以显示的。而第二个问题,由于小程序页面背景颜色是黑色,所以题目的字体颜色不能是黑色,我们做一个查找替换,把style样式里的字体样式替换掉就可以了。

优化

样式可能是各种各样的,通过查找style样式里的字体样式考虑的匹配太多了,比如说color属性值可以是rgb形式,也可是rgba形式,也可能是#号颜色值形式,还有可能是英文形式颜色,所以不可取。我们换一种思路,直接把style属性替换掉,即查找到style,换成一个无效的属性名。案例中我们替换成了c,c是一个无效的属性,不会触发节点的查找和计算。

replace函数

我们用到replace函数,replace()方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

参数

regexp/substr,必需。规定子字符串或要替换的模式的 RegExp 对象。replacement,必需。一个字符串值。规定了替换文本或生成替换文本的函数。

请注意,regexp/substr 是一个字符串,则将它作为要检索的直接量文本模式,而不是首先被转换为 RegExp对象,返回值是一个新的字符串,是用 replacement 替换了 regexp 的第一次匹配或所有匹配之后得到的。

实现

replace() 方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

that.setData({ _list: res.data }) let data = that.data._list data.forEach((element, index) => { var stemContent = '_list[' + index + '].stemContent' that.setData({ [stemContent]: element.stemContent.replace(/style/g, 'c') }) element.choiceTopicVos.forEach((item, i) => { var listCheck = '_list[' + index + '].choiceTopicVos[' + i + '].optionDes'; that.setData({ [listCheck]: item.optionDes.replace(/style/g, 'c') }) }) })

用到的replace函数,进行了字符串的查找替换,查找到style属性,把它替换到了无效的属性c,没有了样式属性,从而达到了去除内联样式的效果,经过调试,完美解决问题。

总结

这是一个小问题,我为什么要拿出来说呢?抛去开发的测试流程不说,我认为它能引发一些思考。写代码的过程必须是一个思考的过程,怎么样更好地去实现效果,怎么样更简单有效地解决问题,怎么样优化,要去考虑一个大的方面。善于发现问题,解决问题,并不是说用了什么高级语言就鄙弃了思考,机器语言是相通的,开发中各种各样地应用才是魅力所在。编程是一门是艺术,最重要的是你怎样去巧妙地运用,就像解一道数学题,精绝巧妙的解法会让人眼前一亮,增色太多。同样都做出来了,但是你做的就显得十分优雅!

方法都是思考出来的,能高效解决问题的方法就是好方法,大家如果还有更好的解决方法欢迎评论区留言

本文链接地址:https://www.jiuchutong.com/zhishi/300722.html 转载请保留说明!

上一篇:手把手带你调参Yolo v5(一)(调参数是什么意思)

下一篇:Nginx跨域解决方案(nginx跨域配置详解)

  • 邮件群发必须懂得的5个过程(群发邮件对方知道吗)

    邮件群发必须懂得的5个过程(群发邮件对方知道吗)

  • win10卸载软件在哪里(win10卸载程序在哪里)

    win10卸载软件在哪里(win10卸载程序在哪里)

  • 微信地址怎么改成外国(微信地址怎么改成中国大陆不显示城市)

    微信地址怎么改成外国(微信地址怎么改成中国大陆不显示城市)

  • 苹果怎么下载超过200MB的应用(苹果怎么下载超话app)

    苹果怎么下载超过200MB的应用(苹果怎么下载超话app)

  • 苹果耳机待机时间多长(苹果耳机待机时间短怎么办)

    苹果耳机待机时间多长(苹果耳机待机时间短怎么办)

  • 微信聊天背景动态壁纸怎么设置(微信聊天背景动漫女)

    微信聊天背景动态壁纸怎么设置(微信聊天背景动漫女)

  • 华为手机如何解除黑名单中的联系人(华为手机如何解除锁屏)

    华为手机如何解除黑名单中的联系人(华为手机如何解除锁屏)

  • 手机腾讯视频怎么下载电影(手机腾讯视频怎么下载到本地相册)

    手机腾讯视频怎么下载电影(手机腾讯视频怎么下载到本地相册)

  • 网络安全密钥不匹配怎么办(网络安全密钥不正确怎么解决)

    网络安全密钥不匹配怎么办(网络安全密钥不正确怎么解决)

  • 电脑一点打印就卡住了(电脑一点打印就未响应)

    电脑一点打印就卡住了(电脑一点打印就未响应)

  • vivo手机出现虚电怎么解决(vivo手机有虚电怎样才能恢复正常)

    vivo手机出现虚电怎么解决(vivo手机有虚电怎样才能恢复正常)

  • 闲鱼重新编辑有影响吗(闲鱼重新编辑有影响曝光吗)

    闲鱼重新编辑有影响吗(闲鱼重新编辑有影响曝光吗)

  • 屏幕原彩什么意思(屏幕显示原彩是原屏吗)

    屏幕原彩什么意思(屏幕显示原彩是原屏吗)

  • 微信里的视频多久会过期(微信里的视频多久过期)

    微信里的视频多久会过期(微信里的视频多久过期)

  • ps怎么给物体加阴影(ps怎么给物体加投影)

    ps怎么给物体加阴影(ps怎么给物体加投影)

  • ps怎么给照片加相框(ps怎么给照片加暗角)

    ps怎么给照片加相框(ps怎么给照片加暗角)

  • 华为nova5pro怎么设置来电闪光灯(华为nova5pro怎么恢复出厂设置)

    华为nova5pro怎么设置来电闪光灯(华为nova5pro怎么恢复出厂设置)

  • 微信运动怎么显示路线(微信运动怎么显示手表健身记录)

    微信运动怎么显示路线(微信运动怎么显示手表健身记录)

  • 怎么防止微信封号(怎么防止微信封链接)

    怎么防止微信封号(怎么防止微信封链接)

  • 网易云系统预设在哪(网易云系统预设为现场还原)

    网易云系统预设在哪(网易云系统预设为现场还原)

  • 网易考拉如何申请会员(网易考拉怎么注册)

    网易考拉如何申请会员(网易考拉怎么注册)

  • ipad多任务分屏怎么用(ipad多任务分屏如何调整比例)

    ipad多任务分屏怎么用(ipad多任务分屏如何调整比例)

  • 抖音视频暂时无法保存是怎么回事(抖音视频暂时无法查看,请稍后重试)

    抖音视频暂时无法保存是怎么回事(抖音视频暂时无法查看,请稍后重试)

  • Word中引号不能成对输入(word中的引号方向不对)

    Word中引号不能成对输入(word中的引号方向不对)

  • 城建税会计分录怎么写
  • 工程结算属于什么行业
  • 办公室电话费计入什么科目
  • 车辆维修费发票清单内容
  • 增值税 抵扣联
  • 开立一般户需要基本户开户行许可证吗
  • 小规模纳税人销售农产品税率是多少
  • 营业执照经营范围增项如何办理
  • 微信手续费发票可以抵扣吗?
  • 应收账款少收的款分录
  • 股权转让溢价会计处理
  • 项目部租房办公应计入什么费用
  • 一般纳税人税种认定有几个增值税要怎么申报呀
  • 原始凭证审核的内容
  • 核定增收和查账增收的区别
  • 无票收入应附什么单据
  • 税收优惠包括哪三个方面的内容
  • 增值税专用发票有效期是多长时间
  • 年薪制离职补偿金
  • 怎么计提企业所得税
  • 一般纳税人施工安装税点
  • 高杠杆资金是什么意思
  • 报销单据粘贴单图片
  • 私营独资企业是小微企业吗
  • 存货年末余额怎么算出来的
  • 增值税留抵退税政策解读
  • 成本核算的原则和要求
  • 更换营业执照要多久才能拿到
  • 出售固定资产增值税税率最新2022
  • 如何使用windows10自带杀毒
  • 如何在win10中同步我的设置
  • 工程公司项目经理年薪一般多少
  • Win10 20H2 LSASS.exe自动重启故障已得到修复
  • php面向对象优点,缺点
  • 你知道约定的公司有哪些
  • php require include
  • 伦德格伦
  • php如何实现伪静态
  • oppor11s输入法怎么清除记忆
  • java web 购物车
  • explorer.exe无响应桌面卡死是什么原因
  • php禁用system用什么绕过
  • urljoin使用
  • 企业通讯费补贴发放规定
  • 未开票收入是怎么算的
  • 增值税发票相关罪名
  • 注册公司注册公司
  • 应收账款在贷方为负数表示什么
  • 冲销暂估入库摘要怎么写
  • 人力资源外包服务包括哪些
  • 其他业务收入怎么申报增值税
  • 保险发票计入什么科目
  • 未开票收入是否代表可以不开发票
  • 商品过期怎么做分录
  • mysql新手入门
  • 微软edge浏览器在哪
  • windows10version1909的10累积更新失败
  • win10预览版选哪个
  • macpro防火墙需要打开吗
  • linux防火墙放行
  • win8 boot manager
  • win10 20h2怎么装
  • windows7word文档打不开怎么办
  • 深入分析的成语
  • 详解16型人格
  • python 字典怎么用
  • cocos2dx游戏开发
  • Node.js中的construct构造函数
  • sql怎么设置自增列
  • Linux修改tomcat默认端口号8080
  • csh,tcsh,bash,sh等shell的区别
  • javascript编程语言
  • js复制div
  • jquery常用的事件绑定函数有哪些
  • JavaScript中的this
  • jQuery animate easing使用方法图文详解
  • 公司代扣税怎么办理
  • 江苏省财务官网
  • 四川灵活就业医保每月返多少钱
  • 税务局如何查询社保明细
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号