让你明明白白学知识,有代码,有讲解,抄的走,学的会!
最近的有在使用富文本开发一些需求,会发现在输入的时候,会帮我们做一些默认的操作,最开始以为是富文本监听input 事件,需要将节流的时间设置长一点
然后在做 code review 的时候,同事建议使用 chrome 的无痕模式进行测试, 果然,就正常了
我正在做输入, 可能我打字慢,然后前面的 ds 就会被默认插入到富文本中, dasd还在等待悬停状态
这是因为 chrome 插件 “划词翻译” 导致的
出现问题不可怕,可怕的是,你不确定问题产生的原因是哪几种
- 开发环境导致的, 比如 过多的 chrome 插件,插件会静默收集用户输入的信息,对当前的页面有干扰
- 开发使用的方式不对,比如: wangEditor 富文本使用方式不对; 比如 iview 文件上传的使用方式不对
- 网络原因,网络波动,造成偶发现象的bug
- 语法错误,可以归结为上面的第二点 (语法错误有很多)
- 前后端接口数据格式不一致
- 请求方式错误
- post请求数据的 content-type 不一致
- 接口授权过期
- ajax错误未捕获
- 后台的非 500错误,未做容错处理
- null 或者 undefined 使用 数组(map, forEach),字符串(split, join)的方法
- 深浅拷贝数据错误
- 死循环
- 未深入理解某个框架数据更新机制 比如 this.$nextTick使用场景, 导致当前效果总是旧数据
- ... 这是整个开发中,最容易出错,也是高频的
所以,我一般的排查思路是
- 无痕模式
- 检查语法
- 查看网络
每天踩一坑,坑坑不一样 😁😁😁