-
Notifications
You must be signed in to change notification settings - Fork 27.4k
Conversation
Check if cache and cache.classes exist. Sometimes cache is undefined and errors are thrown when looped over.
I'm sorry, but I wasn't able to verify your Contributor License Agreement (CLA) signature. CLA signature is required for any code contributions to AngularJS. Please sign our CLA and ensure that the CLA signature email address and the email address in this PR's commits match. If you signed the CLA as a corporation, please let us know the company's name. Thanks a bunch! PS: If you signed the CLA in the past then most likely the email addresses don't match. Please sign the CLA again or update the email address in the commit of this PR. |
Just signed it! |
do you know when this happens? can you add a test so that we avoid error in future refactorings? |
the patch has a lot of whitespace changes which we probably don't want --- I don't think we need a check for This looks right, though. |
667183a#commitcomment-8122956 should explain why the cache / classes might disappear, so that's probably what you want to test |
CLA signature verified! Thank you! Someone from the team will now triage your PR and it will be processed based on the determined priority (doc updates and fixes with tests are prioritized over other changes). |
timepicker's auto-close test is failing with angularjs 1.3 release. Looks like the error might be solved once angular merges pull request angular/angular.js#9636, which introduces a check to avoid the exception. Anyway, the close on blur test works, so something else is triggering the error. By calling the $timepicker.hide method inside a $timeout when auto-closing, the error goes away, so this seems a good fix.
timepicker's auto-close test is failing with angularjs 1.3 release. Looks like the error might be solved once angular merges pull request angular/angular.js#9636, which introduces a check to avoid the exception. Anyway, the close on blur test works, so something else is triggering the error. By calling the $timepicker.hide method inside a $timeout when auto-closing, the error goes away, so this seems a good fix.
4dd5a20
to
998c61c
Compare
timepicker's auto-close test is failing with angularjs 1.3 release. Looks like the error might be solved once angular merges pull request angular/angular.js#9636, which introduces a check to avoid the exception. Anyway, the close on blur test works, so something else is triggering the error. By calling the $timepicker.hide method inside a $timeout when auto-closing, the error goes away, so this seems a good fix.
Any word on when this will be merged? I'm experiencing the same issue. |
I'm facing the same issue too. Is there a workaround? |
@matsko do you want to just merge this? I thought we already merged a similar fix to this, but I guess not |
@jviotti could you provide a repro so that I can write a test case to get this landed? I think the case where this is a bug is when the element gets removed during an animation, but I can't remember. |
@caitp Sadly I'm unable to reproduce. The issue happens very weirdly with the presence of a directive on only one of my pages and I still can't find the source of the issue. The directive uses I'll create a plunker if I manage to reproduce. |
hmm.. there are definitely cases where data is gone... thinking :c maybe ng-if issue |
I think this bug was actually fixed already by 613d0a3 --- i can't find another way to reproduce it. |
yeah I'm just going to close this for now because as far as I can tell, it's fixed. |
Can I clarify in which version this fix is applied? I'm running 1.3.0 and still have issues In my case it happens with nested ng-repeats when I remove the parent |
This is definitely still an issue as of 1.3.0. I can try to come up with a plunkr to reproduce it. Here is a trace:
cache is undefined at this line within the resolveElementClasses method of the ngAnimate module:
|
please do try to come up with a way to reproduce it |
Are you guys perhaps trying to do addClass/removeClass on an element that has no parent? |
I wasn't able to make it work whether there was a parent or not. even using jqLite#removeData() didn't change it. |
I've been trying to recreate it in Plunker but no luck. I've checked my versions again and even swapped out my versions of angular.js and angular-animate.js to latest version and still have the issue.
|
Thanks @matsko! I was worried about this all weekend. You saved the sprint! :) |
In which version will this fix land? |
I can confirm that this issue is fixed in 1.3.2-build.3514+sha.d906ed3 Thanks! |
I can confirm it works too! Thanks a lot! |
Good stuff. Thanks everyone. |
Check if cache and cache.classes exist. Sometimes cache is undefined and errors are thrown when looped over.