玩的就是基础

来源:互联网 发布:网络不稳定怎么办 编辑:程序博客网 时间:2024/04/29 03:44

今天遇到了一个bug。

在vue2中初始化一个hightcharts实例。为了懒一点,少些重复代码,减少冗余。考虑到有多个hightcharts实例,所以对其进行封装。刚开始封装有两种方案,对不同的“图”分类,并创建组件。另一种就是一个基本的初始化函数,通过配置文件来确定使用哪一种”图“。采用后者,这一次。

继续详细封装设计,配置文件是可以有固定属性+数据构成,因此,只配置固定属性【说一句,hightcharts的配置很长,能简化就简化】,数据就在页面加载完成后融合。

重点来了,js的对象是传递引用的。但是配置文件中的对象不能变,想用的话需要复制一份出来。“对象的深拷贝”,

有点懒、也菜就百度了一个。TMD,这个没不全,然后我从五点搞到2:33分。中间吃了个饭、从公司回家、休息了会。从hightecharts==》vue2==》utils.deepcopy【我自己写的函数】,最后一步步找问题找到了。

最后贴上完整版的代码

function deepCopy(source) {  var sourceCopy = source instanceof Array ? [] : {};  for (var item in source) {    sourceCopy[item] = typeof source[item] === 'object' ? deepCopy(source[item]) : source[item];  }  return sourceCopy;}
这个是人家写的,写的比我的简练。其实我写这个的时候遇到了问题,怎么看数组的类型,typeof都是"object",懵逼的看prototype去了,写的又臭又长。。。。(嫌弃我自己)其实这个东西很容易,就是基础代码的拼装,要是基础不好就跟我一样,搞好久。所以啊,一些简单的没用知识其实很有用,只有打好基础才能走得更高。【基础不好,走到高处,代码bug了,你首先会想到框架、插件的使用姿势不对。然而没发现问题,console.log或者打断点调试,找到最后是基础部分没写周全,又恨又喜】

对了,vue2的代码调试该研究下了,没代码调试,我TM一行一行给自己讲代码,【跟个傻子一样】。

整整前端基础、然后吧偷偷搞java。这项目封装的思想挺像java的.proxxx文件配置的,尽量不要动代码。


原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 没感冒嗓子痰多鼻涕怎么办 孩子感冒后鼻涕特别多怎么办 经常有鼻涕怎么办才好 怀孕后鼻涕痰多怎么办 鼻炎有鼻涕痰多怎么办 宝宝咳嗽痰多鼻涕多怎么办 宝宝两岁清鼻涕咳嗽痰多怎么办 喉咙咸咸的有痰怎么办 宝宝咳嗽鼻塞喉咙有痰怎么办 绝地求生刺激战场射击键误触怎么办 在皮卡堂卡的游泳了怎么办 假如遇到老赖没能力还钱怎么办 服刑人拒不执行伤害赔偿怎么办? 面对当前严峻形势作为军人怎么办 想起诉不知道对方地址怎么办 遇见家里来嫌疑人员怎么办 老滚5老婆死了怎么办 美化包安装之后闪退怎么办 蕉下的伞坏了怎么办 苹果7通话音质特别差怎么办 雨伞的伞骨坏了怎么办 雨伞的铁丝掉了怎么办 手机银行验证码忘了怎么办 应用安装验证码忘了怎么办 大王卡激活码找不到了怎么办 信用卡的激活码找不到怎么办 育碧账号忘了怎么办 uplay八折券丢了怎么办 不小心按到了育碧解绑怎么办 台式电脑连不上网怎么办 重装系统也安装不了cad怎么办 染发灰色偏绿了怎么办 vgm数据填错了怎么办 克里格插值 不符合正态分布怎么办 克里金插值无效的输出范围怎么办 穿完臭袜子要洗手吗不洗怎么办 超敏c反应蛋白117怎么办 钢铁雄心4无模板怎么办 登录 新浪微博登录异常怎么办 微博授权失败怎么办qq uc微博授权失败怎么办