console.log()打印的数据和展开数据不同

在前端开发中会使用console.log()方法打印日志,但是有时候打印的日志和展开后的日志不同,如下:

...
console.log("dataCode:");
console.log(dataCode);
console.log(dataCode.code);
...

在这里插入图片描述
点击箭头展开后
请添加图片描述
促使这个现象的主要原因是,console.log()在打印日志后,代码或者控制台又修改了log()里面的数据,因此,在代码执行完后第一次点击展开箭头的那一刻系统会读取数据的最新状态。注意:是第一次展开的时候,第二次展开如果修改了数据就不可以更新了。
上图中dataCode.code等于-1说明打印的时候是code为-1的旧值,code为1时候的值是在点击展开箭头时候出现的。
如果出现了以上问题,就需要检查这个打印代码执行之后是否修改了数据,也有可能是某个异步代码(网络请求等)修改的数据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
这段代码是一个 Vue.js 组件的 methods 属性,包含了多个方法: 1. onMenus 方法接收一个对象参数,包含节点信息 node 和命令信息 command,并将其打印出来。 2. filter 方法调用了 Vue.js 组件中 ref 为 tree 的组件的 filter 方法,传入关键字 this.keyword 进行筛选。 3. filterNodeMethod 方法接收两个参数,一个是输入的值 value,另一个是节点数据 data,如果 value 为空,则返回 true,否则返回 data.label 中是否包含 value。 4. onExpand 方法接收两个参数,一个是事件对象 e,另一个是节点数据 data,并将其打印出来。 5. nodeDragMove 方法接收一个参数,即拖拽节点的数据 data,并将其打印出来。 6. nodeDragEnd 方法接收两个参数,一个是拖拽的节点数据 data,另一个是是否拖拽到了自身 isSelf,如果是,则弹出提示信息。 7. onNodeClick 方法接收两个参数,一个是事件对象 e,另一个是节点数据 data,弹出 data.label 的提示信息。 8. onNodeDblclick 方法没有参数,弹出双击节点的提示信息。 9. onNodeCopy 方法没有参数,弹出复制成功的提示信息。 10. handleNodeAdd 方法接收一个参数,即新增的节点数据 node,并将其打印出来。 11. expandChange 方法没有参数,调用 toggleExpand 方法,将组件的数据 this.data 和 this.expandAll 传入。 12. toggleExpand 方法接收两个参数,一个是节点数据 data,另一个是是否展开 val,如果 data 是数组,则递归调用 toggleExpand 方法处理每个子节点,否则将 data 的 expand 属性设置为 val,并递归处理其子节点。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值