-
-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
some mutation methods of Array cause infinite recursion #2137
Comments
What about method splice? |
This is expected since your effect is mutating its dependency. |
@CyberAP I don't think it's reasonable, operating one array in two effects leads to infinite recursive call, it sounds crazy 😂 |
You'll get the same result in Vue 2, the problem here is with the logic of the code, not with the Vue's API. |
@CyberAP any repro in Vue 2? 😲 |
… updates (#2138) fix #2137 Co-authored-by: Evan You <[email protected]>
I don't consider it as a bug or something need to fix. That's how it should be. It looks similar to #3653. |
Version
3.0.0-rc.12
Reproduction link
https://codepen.io/unbyte/pen/ExKePMY
Steps to reproduce
What is expected?
effects should only run one time, cuz no reactive dep has changed
What is actually happening?
infinite recursive update
I've fixed it by #2135 , however it was closed by some misunderstanding.I've created another PR #2138 to fix it.
This recursion is not due to the self-calls of the effect, but that
push
changes.length
while it depends on.length
(however this dependency is not really needed)The text was updated successfully, but these errors were encountered: