Code Monkey home page Code Monkey logo

Comments (5)

trueadm avatar trueadm commented on May 29, 2024 4

@valterkraemer That would break far too many cases as we now use runtime reactivity rather than compile time reactivity.

from svelte.

trueadm avatar trueadm commented on May 29, 2024

This is to be expected. Runes are designed to read dependencies sync only – and given the browser has no native way to track async context (yet), this isn't possible to do otherwise.

from svelte.

valterkraemer avatar valterkraemer commented on May 29, 2024

This is to be expected. Runes are designed to read dependencies sync only – and given the browser has no native way to track async context (yet), this isn't possible to do otherwise.

Thanks, that's what I assumed, but couldn't find any documentation/issue related to it.

I guess the compiler could traverse the inside of e.g. $derived and find all the dependencies though 🤔

from svelte.

trueadm avatar trueadm commented on May 29, 2024

@valterkraemer What if you call a function from a random npm module? The compiler is limited in context.

from svelte.

valterkraemer avatar valterkraemer commented on May 29, 2024

@valterkraemer What if you call a function from a random npm module? The compiler is limited in context.

I was thinking just the variables used inside of the $derived block, not calls to code outside of it. But yeah, that's probably not a good idea.

Then this would work

let derivedId = $derived.by(() => {
  return Promise.resolve().then(() => chatId);
});

But not this

function myFunc() {
  return Promise.resolve().then(() => chatId);
}

let derivedId = $derived.by(myFunc);

from svelte.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.