ng-show被隐藏的“功能”

被刻印的时光 ゝ 提交于 2020-01-14 08:15:23

在工作中由于手残,少写了一个“=”,导致了一个惊人的事情,接口返回的内容被我莫名其妙的改了,所以页面显示也很有问题。

代码说明:

// 接口返回的字段是status:'abc_ing'
// HTML的内容


<p ng-show = "status='abc_ed'">我是谁?</p>
<p ng-show = "status=='abc_ing'">我在哪?</p>

那么此时页面就会显示,我是谁?

原来,ng-show 后面的判断条件对status的值进行了赋值操作(居然还可以赋值),我是第一次遇到这种情况。

而且你把接口内容console出来当中的status也是abc_ed;

因为console出来的内容是当下最新的内容,也就是ng-show中的判断条件对其赋值之后的结果。

所以从这里得到一个教训,只要console出来的内容和接口返回的不一致,那么一定是对数据进行了操作。如果在js代码中找不到进行数据修改的任何蛛丝马迹,别忘记去HTML部分检查一下,或许就会找到答案。

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!