我在一个页面的controller中要根据拿到的数据来对某div的class进行操作,但是这时候dom还没渲染完,这个div是repeat出来的,此时拿到的只是空的nodelist,想问大家怎样才能知道angular渲染结束并且顺利执行我的代码?
这里,我没看懂你要完成以后做什么操作。暂且不管他。
ng渲染完以后 数据会自己绑定上去。你应该不需要自己去操作。而且不推荐你去干扰ng自己的digest流。
如果你胆儿肥的话,可以照这个做
https://github.com/angular/angular.js/issues/734
还有
http://docs-next.angularjs.org/api/angular.module.ng.$rootScope.Scope#$evalAsync
但是我觉得你的问题可能并不是你想的那样,即使你的repeat的list是空的 也会在装满以后自己渲染出来。
这里你需要注意 你的list 是否中途重新赋值了。如果有,那你傻逼了。
如果你非要那样玩儿。可以试试看用一个函数包裹。函数里面返回你要处理的list,在模板上repeat 那个 函数的返回值。
如果你的这个list是请求回来的。那么你用ng resouce的正确规则去取,然后直接往页面上丢就行了。取完了他自己会出现。
现在确保数据正确,你可以用ng class 在ng的渲染流中加你的class了。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。