-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Svelte 5: Missing warning for non-state use in $effect
?
#12142
Comments
If it is decided to have warning, it shoudn't be for usages of none-reactive values in effects/deriveds. IMHO a warning could be there, only if there are 0 reactive values inside an effect/derived. For example an effect could depend on only 1 reactive value, but use 10 other variables that are not reactive which is fine. If nothing in the effect, triggers a rerun, then there could be a warning. Also one might use $effect just for onMount and then cleanup logic. Thoughts? |
The warning is to make sure you don't forget assigning them with $state, if they were meant to be reactive. That is also why it is a warning, and not an error, as it is fine to use those if you don't need the reactive dependency |
The question is whether this would lead to many false positives or not. |
I think i'm with @FoHoOV on this one...there are reasons to use non stateful variables in an effect. The error should really just be thrown if that's the only dependency but this also means that the first function call should mute this error. Maybe even property access. |
I suspect you both overestimate how often the warning would trigger - it is very specific. The variable has to be...
E.g. constants and imports would not be affected. How often do you really want to change a local value, use it in an |
Describe the bug
When a non-state value that is assigned is used in the template, you get a warning:
Could/should such a warning be shown if the value is only used in an
$effect
?(Related/found via: #12141)
Reproduction
REPL
Logs
No response
System Info
Severity
annoyance
The text was updated successfully, but these errors were encountered: