let c = 0; $: console.log(c);
If we want to print the value of c
when it is changed, we can write like above.
Because c
is used in $
directive literally, so this statement can be reactive to c
.
But what if I just want to console.log('yes')
when c
is changed?
let c = 0; $: console.log('yes');
Obviously, the statement console.log('yes')
is not reactive to c
.
Furthermore, if I still console.log(c)
but put it into a function:
let c = 0; function log() { console.log(c); } $: log();
log()
is also not reactive to c
.
So, what can I do if the reactive code doesn’t literally contain the variable which I want to reactive to?
Advertisement
Answer
I asked in Twitter, the answer [from Rich Harris] is:
$: c, console.log(‘yes’) It does feel a bit weird, I know 🙂
Link to the thread: https://twitter.com/liyuanqiu/status/1149235193296773122