请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

脏值检测2次,没有看到代码跑的过程,不懂为什么会两次

脏值检测2次,没有看到代码跑的过程,不懂为什么会两次

正在回答 回答被采纳积分+3

1回答

接灰的电子产品 2021-04-14 12:14:36

没看懂这个问题,脏值检测是跑两次的,跑两次才能知道区别

0 回复 有任何疑惑可以回复我~
  • 我也有这个疑问,在3-2(2)一开始的部分,console中“组件脏值检测”打印了两次,说明ngDoCheck跑了两次?所以什么情况下触发这个钩子函数呢?我看您在其他的问题里的解释,说这个函数不是脏值检测之后进行的,而是参与其中。我也不太明白。您能给个例子吗?谢谢
    回复 有任何疑惑可以回复我~ 2022-11-23 07:34:32
  • 简单来说,ng 的脏值检测是对整个dom树做循环检查,一般来说做两次,第一次和第二次比较差异,然后进行渲染的改变
    回复 有任何疑惑可以回复我~ 2022-11-23 10:10:19
  • 触发的条件比如说你按了某一个按钮,这个按钮导致某些页面状态的改变,比如你把组件类的某个值改变了,而页面又绑定了或者依赖这个值,这就会触发脏值检测,要根据脏值检测的结果来改变界面啊
    回复 有任何疑惑可以回复我~ 2022-11-23 16:18:42
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信