Quantcast
Channel: Active questions tagged svelte - Stack Overflow
Viewing all articles
Browse latest Browse all 1541

How to resolve concurrent dependency change?

$
0
0

So let's say I have these variables ($: marks a reactive statement, so when any of the values after = change, the variable is updated):

let x = 0;$: y = x;$: z = x + y;function onSomeUserInteraction(input) {   y = input;}

So in this case, x is an independent variable, meanwhile y depends on x, and can also be altered by user interaction. And z depends on x and y.

Now my problem is, that when x changes, this triggers an update in z. But since y depends on x, it also changes, which triggers another, redundant update to z. So my question is, how can I handle these dependencies in such a way that changing x doesn't update z twice? The obvious solution would be just to have $: z = x + x. But the problem is with the user interaction, which might alter the value of y, so y may not always be equal to x.

Another way to reframe the code would be like this:

let x = 0;$: y = x + i; // I is some arbitrary value that can be updated by the user$: z = x + y;

Any suggestions for how to resolve this? Thank you.


Viewing all articles
Browse latest Browse all 1541

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>