代码优化方法记录

每次代码 review 之后,对 review 的情况进行总结记录,产出实际经验,方便组内学习、分享。

1、提取公共内容

公共内容要提取,避免重复编写;

2、css 色值使用变量

css 中的色值、字体,都换成组件库中的变量、class;

3、v-if、v-show要用对时机

如果就是不加载对应组件可以用 v-if,否则,尽量用 v-show。比如多tab切换的时候,可以保存客户的使用状态;

4、无用代码去除

无用代码、注释掉的代码,记得删除,否则后期改造或者进行逻辑梳理的时候会造成干扰。

5、解构赋值

善用解构赋值,优化代码, 避免重复长链路获取

反面示例:

const isEmbed = this.$route.query.isEmbed 
const isEmbed2 = this.$route.query.isEmbed2

期望示例

const {isEmbed,isEmbed2} = this.$route.query

6、加好注释

业务逻辑类的判断,要加注释,否则别人不知道是什么意思。

7、善用三元表达式

用三元表达式来写,简化代码,避免大片的 if-else

反面示例:

if (this.loginType === 'certLoginProcess') {    this.$Message.error(loginErrorMessage || '登录认证失败!') 
} else {    this.$Message.error(loginErrorMessage || '无感登录失败!') 
} 

期望示例

this.$Message.error(loginErrorMessage || (this.loginType === 'certLoginProcess' ? '登录认证失败!' :  '无感登录失败!'))

8、善用 Array.includes()

同字段多个逻辑或( || )判断,可以改为使用 includes

反面示例:

if (result.dictCode === 'STAR' || result.dictCode === 'SPACE') {}

期望示例

['STAR','SPACE'].includes(result.dictCode)

9、善用逻辑或 ||

善用逻辑或(||)运算符处理,避免大片if else

反面示例:

if (this.formData.affiliatedBusiness === '10') {    return true 
} if (this.formData.affiliatedBusiness.includes('10')) {    return true 
}

期望示例

let { affiliatedBusiness } = this.formData 
if(affiliatedBusiness === '10' || affiliatedBusiness.includes('10')){ 	return true 
}

10、驼峰命名

反面示例:

const testTel = utilFun.is_valid_phone_number(taxTel)

期望示例

const testTel = utilFun.isValidPhoneNumber(taxTel)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/45565.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在 IVS 2024 加密盛会上开拓创新:CESS 引领去中心化云存储和 CD²N 之发展

作为基于区块链的去中心化云存储网络和 CDN 基础设施网络,CESS 在日本年度加密创业大会 IVS 2024 上成为焦点!此次活动在历史悠久的京都举办,围绕“跨越边界”这一主题,吸引了超过15,000 名参会者,其中包括 3,000 创始…

docker/podman 安装nacos

设置环境变量,创建卷目录: VOL_HOME/data/volumes; mkdir -p $VOL_HOME/nacos/conf; mkdir -p $VOL_HOME/nacos/logs; mkdir -p $VOL_HOME/nacos/data; chown -R 200 $VOL_HOME/nacos; 创建nacos数据库,运行脚本: $VOL_HOME/na…

做实验的顺序-因人而异,只是记录自己的想法,,

1先去设计模型,运行。 2调参,最近发现超参数更重要。选择出来一个好的超参数(为消融实验做准备)。 (友友们,如果不是自己设计的什么重要超参,尽量参考已有的论文,这样就不用做很多…

SpringCloudAlibaba基础五 Nacos配置中心

一 Nacos配置中心介绍 官方文档:https://github.com/alibaba/spring-cloud-alibaba/wiki/Nacos-config Nacos 提供用于存储配置和其他元数据的 key/value 存储,为分布式系统中的外部化配置提供服务器端和客户端支持。使用 Spring Cloud Alibaba Nacos C…

2024 福州市延安中学“拿云杯”复赛试题

回忆版(持续更新) 目录 答案 答案

风光摄影:相机设置和镜头选择

写在前面 博文内容为《斯科特凯尔比的风光摄影手册》读书笔记整理涉及在风景拍摄中一些相机设置,镜头选择的建议对小白来讲很实用,避免拍摄一些过曝或者过暗的风景照片理解不足小伙伴帮忙指正 😃,生活加油 99%的焦虑都来自于虚度时间和没有好…

【matlab】周期性信号分析

目录 信号预处理 周期性特征提取方法 频谱分析 傅里叶变换 快速傅里叶变换(FFT) 周期图法 Welch法 自相关分析 时频分析 基于模型的方法 时间序列分解 应用实例 提取信号的周期性特征是一个在信号处理领域广泛应用的技术,特别是在…

模型(卷积、fc、attention)计算量 MAC/FLOPs 的手动统计方法

文章目录 简介背景为什么理解神经网络中的MAC和FLOPs很重要?资源效率内存效率能耗功耗效率 模型优化性能基准研究与发展 FLOPs 和 MACs 定义1. 全连接层 FLOPs 计算步骤 1:识别层参数步骤 2:计算 FLOPs 和 MACs步骤 3:总结结果使用…

每日一练:奇怪的TTL字段(python实现图片操作实战)

打开图片,只有四种数字:127,191,63,255 最大数字为255,想到进制转换 将其均转换为二进制: 发现只有前2位不一样 想着把每个数的前俩位提取出来,组成新的二进制,然后每…

深入剖析Memcached缓存穿透:问题解析与解决方案

标题:深入剖析Memcached缓存穿透:问题解析与解决方案 摘要 Memcached是一种广泛使用的高性能分布式内存缓存系统,它通过减少数据库访问次数来提高应用程序的响应速度。然而,当缓存系统面临大量查询不存在的数据时,会…

做3D渲染,选择什么显卡好?

对于设计行业的小伙伴来说,电脑配置的优劣是个尤为关键的要素,特别是显卡,对于很多人而言,如何选择一张最适合的 3D 渲染显卡确实一大难关! 在目前市场上,主流的显卡分别是 AMD 显卡和 NVIDIA 显卡&#x…

Spring源码二十四:Bean流程探讨

Spring Bean 初始化中的循环依赖处理 在Spring框架中,bean的创建和管理是其核心功能之一。在复杂的应用中,bean之间可能存在循环依赖,这给bean的初始化带来了挑战。Spring通过三级缓存机制巧妙地解决了这个问题。本文将详细探讨addSingleton…

Java基础面试题大全

Java基础 语法基础 aab 和 ab 操作隐式的将操作的结果类型强制转换成持有结果的类型,而不会 比如对byte,short,int类型的操作,会先将他们提升到int类型,然后在执行操作。所以比如我定义了两个byte类型的a和b&#x…

KEIL 5项目中源文件图标带有雪花(四叶草)消除办法

今天在使用KEIL 5写STM32程序的时候,出现了一个错误: Error: L6218E: Undefined symbol test_for_diaodu (referred from main.o). 具体表现为,不管我把自己写的一个my.c里的什么函数或者变量名,即使在main.c中声明、引用了&#…

PCL从理解到应用【04】Octree 原理分析 | 案例分析 | 代码实现

前言 Octree 作为一种高效的空间分割数据结构,具有重要的应用价值。 本文将深入分析 Octree 的原理,通过多个实际案例帮助读者全面理解其功能和应用,包括最近邻搜索、半径搜索、盒子搜索以及点云压缩(体素化)。 特性…

搞懂负载均衡,零基础也可以!

本文作者:程序员鱼皮 免费编程学习 - 编程导航网:https://www.code-nav.cn 大家好,我是鱼皮。 周末在家写代码,无意中跟朋友提了下 LB,还说 LB 好的呱呱叫。 朋友笑了笑,问我 LB 是谁? 我解释…

加密软件|让数据传输更安全

加密软件在当今数字化时代扮演着至关重要的角色,它们通过先进的加密算法和技术,确保数据在存储、传输和分享过程中的安全性,从而保护个人隐私和企业机密。一、加密软件的基本作用数据加密:加密软件通过应用复杂的加密算法&#xf…

Python转换PDF为PowerPoint演示文件

PDF文件以其跨平台兼容性和版面固定性成为了分享和存储文档资料的首选格式。然而,在需要进行生动、互动性强的演示时,PDF的静态特性便难以满足个性化演示需求。将PDF文件转换为PowerPoint演示文稿可以解决这一问题。PowerPoint不仅提供了丰富的动画和过渡…

视觉定位和GPS定位在应用场景有什么不同?

视觉定位的应用场景 工业自动化: 在工业生产线上,视觉定位技术可以实现对不同物体的精确定位和识别,从而支持智能化生产。例如,在装配线上,机器人可以通过视觉定位技术准确地抓取和放置零件。机器人导航: …

微博热搜数据爬取与分析

一、课题描述 1.1项目背景 微博热搜数据爬取与分析是一门涉及信息检索、数据挖掘和文本分析等技术的课程。随着社交媒体的普及和人们对舆情、热点话题的关注度不断增加,利用数据挖掘和分析技术对微博热搜数据进行收集和分析具有重要的意义。 本课程设计旨在帮助学我们把握数…