Je wrap déjà toutes mes valeurs dérivées de state dans des useMemo en React (peut-être mauvaise pratique), donc ça me dérangerais pas de tout mettre dans des computed Super vidéo ! J'ai hâte de voir son adoption plus large dans les libs
Dans le principe ça ressemble un petit peu au computed (et plus globalement au système de réactivité) de Vue 2, et beaucoup au système de réactivité de Vue 3. Dans la même veine, le système de réactivité de Vue est utilisable à part. Personnellement je m'intéressais pas mal à Oby. C'est intéressant de voir cette évolution convergente dans les systèmes de réactivités
Les signaux sont un super outil mais je me demande s'ils ne vont pas à l'encontre de la philosophie de rendu de React (VDom). Et du coup, si on souhaite de mode de fonctionnement ne vaut il pas mieux utiliser SolidJs ? Même si les exemples sont claires et intéressants j'ai du mal à imaginer un projet multi-développeurs utilisant hooks et signaux de manière raisonnée.
import { shallowRef, triggerRef } from 'vue' export function createSignal(value, options) { const r = shallowRef(value) const get = () => r.value const set = (v) => { r.value = typeof v === 'function' ? v(r.value) : v if (options?.equals === false) triggerRef(r) } return [get, set] } Pour le fun 😅
VueJS utilise une approche similaire aux signaux. Dans le cas de VueJS watchEffect(() => {}, {immediate: true}) est l'équivalent du effect() montré dans cette vidéo.
@@grafikart Toi qui disais ne plus aimer Vue t'es bien servi 😅 Après ce n'est pas du JS natif de ce que j'ai compris (C'est plutôt watch() qui prend un objet immediate en option, watchEffect est de base réactif dès sa création ;))
Plutôt d'accord. Quand les choses se ressemblent trop les petites subtilités deviennent difficile à anticiper/percevoir. Le monde du web n'évolue plus il se duplique et ça devient le gros merdier Trop de développeurs sur le marché, ça devient n'importe quoi
Je wrap déjà toutes mes valeurs dérivées de state dans des useMemo en React (peut-être mauvaise pratique), donc ça me dérangerais pas de tout mettre dans des computed
Super vidéo ! J'ai hâte de voir son adoption plus large dans les libs
Dans le principe ça ressemble un petit peu au computed (et plus globalement au système de réactivité) de Vue 2, et beaucoup au système de réactivité de Vue 3. Dans la même veine, le système de réactivité de Vue est utilisable à part. Personnellement je m'intéressais pas mal à Oby. C'est intéressant de voir cette évolution convergente dans les systèmes de réactivités
Merci pour la découverte. Comme d'habitude tes videos son très instructive :)
j'ai eu une fausse joie, j'ai cru que c'était intégré a js nativement x)
Je vais enfin arréter de faire des eventemitter et observer a gogo
Les signaux sont un super outil mais je me demande s'ils ne vont pas à l'encontre de la philosophie de rendu de React (VDom).
Et du coup, si on souhaite de mode de fonctionnement ne vaut il pas mieux utiliser SolidJs ?
Même si les exemples sont claires et intéressants j'ai du mal à imaginer un projet multi-développeurs utilisant hooks et signaux de manière raisonnée.
Est-ce que c'est plus conseillé/mieux d'utiliser useState ou les signals ?
instructive
Il me semble que vue possède une lib interne pour gérer la réactivité (et utilise par d'autres frameworks) pour le même usage
OUI.
import { shallowRef, triggerRef } from 'vue'
export function createSignal(value, options) {
const r = shallowRef(value)
const get = () => r.value
const set = (v) => {
r.value = typeof v === 'function' ? v(r.value) : v
if (options?.equals === false) triggerRef(r)
}
return [get, set]
}
Pour le fun 😅
Alors r, v ne sont pas des noms de variables/paramètres valides à mon sens.
Quelle différence avec `computed()` / `watchEffect()` au sein de VueJS ? (je n'ai pas encore tout regardé :p)
VueJS utilise une approche similaire aux signaux. Dans le cas de VueJS watchEffect(() => {}, {immediate: true}) est l'équivalent du effect() montré dans cette vidéo.
@@grafikart Toi qui disais ne plus aimer Vue t'es bien servi 😅
Après ce n'est pas du JS natif de ce que j'ai compris
(C'est plutôt watch() qui prend un objet immediate en option, watchEffect est de base réactif dès sa création ;))
j’pense que cette manier de faire vas changer beaucoup de chose dans react/preact
Ca ressemble pas mal au fonctionnement de VueJs.
Toutes les librairies vont finir par se ressembler.
Ce qui serait plutôt un bon signe de compréhension des besoins de la part des développeurs d'outils de développement
Oui clairement il faut prendre ça comme une bonne nouvelle !
Plutôt d'accord. Quand les choses se ressemblent trop les petites subtilités deviennent difficile à anticiper/percevoir.
Le monde du web n'évolue plus il se duplique et ça devient le gros merdier
Trop de développeurs sur le marché, ça devient n'importe quoi
J'espère que React va les intégrer mais ils n'avaient pas l'air très chauds
On dirait les stores de svelte js
Ca ressemble beaucoup à tout ce que fait Vue 3.