Common questions asked about Solid and its ecosystem, by Brendonovich.
Table of Contents
Signals store a single value. When a signal is updated, everything that depends on it will re-run.
Stores wrap objects and arrays and make all of their entries reactive. When updating a store entry, only things that depend on that specific entry re-run, unlike a signal that will re-run all of its dependents. This works with any combination of nested arrays and objects, effectively turning each object property and array item into its own signal.
My preferred way of doing this is by wrapping props.children
in a layout of the routes in Transition
from solid-transition-group
. An example of this is here in Mattrax, where we have a fade transition between all routes in the (flow)
route group.
This approach works best when each route creates its own container element. Routes wrapped by another layout lower down will need their own Transition
in that sub-layout, and a route returning multiple elements inside a fragment may not work properly.
I refer to app.config.ts
using path syntax to represent nested fields, ie. ‘set server.preset
to node-server
' should result in your config looking something like:
{
server: {
preset: "node-server"
}
}