美文网首页
修改前端代码的方法

修改前端代码的方法

作者: 前端人 | 来源:发表于2020-03-07 16:34 被阅读0次

工作中,大部分情况,我们都面临的不是重头开发一套系统,而是在已有系统上做修改。
那问题就是有什么好的思维方法去修改别人的代码。
我总结一下经验

  • 1.第一步读懂别人的代码,读懂代码后记得写注释 ,要形成一个好习惯。
  • 2.找到要修改的代码后,在功能未联调提测前,不要把别人的代码删除,最好只是注释掉。方便你需要的时候来参考。因为对于你删除的代码,可能隐藏了一些业务细节,而你没有注意到。接手新系统,最难理解的是别人的业务。可能产品经理都换了几批了,原有的业务细节随着相关人员流失,已经没有人知道了。所以要对老系统的原有代码保持敬畏。一旦以Bug的形式出行时,方便你注意到那些细节
  • 3.添加代码,把自己要写的代码封装起来。可以简单的是一个函数封装起来,也可以是一个class封装起来,也可以搞成一个文件模块封装起来。封装的代码好处很多。容易追责,可以很容易判断是老代码问题,还是你加的代码问题。
    很多人增加功能修改别人的代码时,更加喜欢的是在原有的函数里写代码,定义全局变量,就像搞成语接龙,最后一页的代码 长达几千行,阅读性很差。

修改css的经验
很多人要修改在某个已有样式基础上要覆盖别人的样式,都是加! important,加Id. 这是不是太简单粗暴了。你这样覆盖后,后面的还如何覆盖。
例如

   <div id='head'></div>  
  <style>
  #head{
    color:red;
   }
 </style>

如果要覆盖color的样式,很多人可能是加内联样式 来解决问题。其实这不是一个好主意。应该是改成

 <div id='head'></div>  
  <style>
  #head{
    color:red;
   }
 div#head{
 color:black;
   }
 </style>

这样就可以覆盖样式了。这要求大家了解样式权重的叠加规则。
现在简单总结一下
1.本地内联样式(<stlye></style>)大于导入样式(Link或@import)
2.样式选择符权重大小排序 !import>内联>id>(class,属性选择符,伪类)>(标签选择器 ,伪元素)>通配类型的选择器(*,结构选择,前面一个 ,子类,后代,邻居)
3.用户设置>创作者>浏览器自带样式

一般我们要掌握2就够了。另外记住权重是可以叠加的。

彩蛋一个

  • promise中finally的代码在then或catch的回到执行完成后才会执行。
  • 微信小程序中,
 initConfirmOrder(params) {
return request
  .Post(xxx, params)
  .then(({ errcode, data }) => {
    wx.hideLoading({
      complete: function() {
        console.log('complete 被执行');
        console.log('complete 被执行');
        console.log('complete 被执行');
        console.log('complete 被执行');
      },
    }); 
  })
  .finally(function() {
    console.log('测试代码 finally被执行');
    console.log('测试代码 finally被执行');
    console.log('测试代码 finally被执行');
  });

}

这样的代码中 comlete里回调代码会在finally执行完成后才执行

原理我不太清晰,但是事实是这样。这样有时候可能产生一些你意料之外的Bug,请同胞们注意。

相关文章

  • 修改前端代码的方法

    工作中,大部分情况,我们都面临的不是重头开发一套系统,而是在已有系统上做修改。那问题就是有什么好的思维方法去修改别...

  • croppers的formdata上传不成功原因及解决办法

    原因:格式问题解决方法:将blob改成data64上传,前端还是用blob渲染 原代码 修改后代码

  • ajax修改

    前端代码(列表页):点击修改时,一定要带id 后台代码:接收id,并通过id查询数据,再把数据分配到修改模板 前端...

  • runtime方法交换

    方法交换的作用:一、在不修改源代码的基础上,对方法内的代码进行修改二、

  • SignalR学习二:给指定用户发送消息

    ChatHub.cs中添加登陆和单发消息方法 修改前端页面 修改前端js 在connection.start()中...

  • 跨域的几种例子

    JSONP: 前端代码: 后台node.js代码: CORS方法: 前端代码与AJAX并无不同,只是在后端需要添加...

  • 2018-04-09

    分析原函数 后端代码中有前端函数的执行,所以我觉得如果如果你要合并前端函数,后端代码也需要修改。类似getWell...

  • 工作能力:需要解决的问题

    编程课程(前端学习): 一、代码的可扩展性 问题:每次修改自己以前写的代码都要钻到函数底层,修改/添加/减少某个变...

  • matplotlib图例中文乱码解决方法

    原代码 原图 修改方法1 直接在代码后进行参数设置 修改后的图 修改方法2 然后进入C:\\Users\\sw1\...

  • iOS线上紧急bug修复

    1.如果是webview方面的,前端直接修改前端代码提交即可2.如果是后台数据返回问题导致的crash,则后台修改...

网友评论

      本文标题:修改前端代码的方法

      本文链接:https://www.haomeiwen.com/subject/zfycdhtx.html