关于提升前端代码健壮性

最近在工作当中,遇到一些有关代码健壮性的问题。比如没有对异常数据进行判断处理等。于是诱发了思考,是否在实际工作当中,很多时候都忽略了这些小而能解决的问题呢?于是想要做一下整理,以便自查代码。

       所谓前端的代码健壮性,是保证代码在正确和规范的环境中运行时,能够正确的应对一些特殊的情景。以便可以应对一些异常情景或者是误操作。

简单整理一下,大致要注意以下几个方面:

处理数据异常(例如进行非空判断):

        在从后端获取数据时,一般情况是正常的,但是后端有时候处理不得当,会产生一些空数据或者null。

       如上图,这个时候我们在取用data时进行循环或者取值时就会发生报错。并且有可能影响到后续的运算或者回显。

       此时就需要对数据提前进行异常的预处理。例如进行非空判断,或是trycatch将异常抛出到控制台或是忽略。

if (res.data && res.data.length > 0) {   // 非空/null
   ...  // 处理数据
}

// try catch

try {
  ... // 处理数据
} catch {
  ... // 应对异常
}

处理页面展示兼容:

       便于我们的页面能够兼容到大部分主流的分辨率和跨端的展示。可以考虑在实际场景下对px的使用进行替换。或者是监听页面的高度/宽度等,对当前浏览器/端,进行一个动态的适配。

 // 例如chat-gpt针对vue2给出的一些适配建议

<template>
  <div>
    <!-- 组件内容 -->
  </div>
</template>

<script>
export default {
  mounted() {
    window.addEventListener('resize', this.handleResize);
    this.handleResize(); // 初始加载时执行一次适配
  },
  beforeDestroy() {
    window.removeEventListener('resize', this.handleResize);
  },
  methods: {
    handleResize() {
      // 获取浏览器窗口的宽度和高度
      const windowWidth = window.innerWidth;
      const windowHeight = window.innerHeight;
      
      // 执行适配逻辑
      // 这里可以根据实际需求进行相应的动态适配操作
      // 例如修改样式、更新组件数据等
      
      // 示例:将窗口宽度和高度保存到组件数据中
      this.windowWidth = windowWidth
      this.windowHeight = windowHeight
    }
  }
}
</script>

除此之外,对于数据的校验(如非负,去空格,浮点数等),对用户怪异行为的预处理等,都是需要考虑到的问题。

要在需求准时上线的同时,兼顾到种种问题,也是前端人需要做出的考虑。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值