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

Why is this Sevlte useSelector implementation not calling the derived function?

$
0
0

I've been trying to get Redux working in Svelte to make porting some React based code that use useDispatch and useSelector hooks simpler.

I found a useful guide which leads to a Gist. I've gone through and implemented this approach (which I did manage to get a more primitive example working some months back) but now can't seem to get things going.

I've got a reproduction of my progress here https://svelte.dev/repl/9ae9be44ed814a2b857962aa191173ed?version=4.2.12 but essentially the bit I'm struggling with is the useSelector hook.

export function useSelector(selector, equalityFn) {    if (!equalityFn) {    equalityFn = (lhs, rhs) => lhs === rhs;  }    const store = getContext(STORE_KEY);  let lastSelectorValue;    return derived(store, ($state, set) => {        console.log("This derived callback never fires");        const selectorValue = selector($state);        if (!equalityFn(selectorValue, lastSelectorValue)) {            lastSelectorValue = selectorValue;      set(lastSelectorValue);        }    });}

For some reason when I set this up, the callback passed to derived never seems to get called.

Can anyone explain why this isn't working so I can fix the useSelector?


Viewing all articles
Browse latest Browse all 1743

Trending Articles



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