Tweak docs with warning to fix #2508 (#2895)

Co-authored-by: Barney Carroll <barney.carroll@gmail.com>
This commit is contained in:
Claudia Meadows 2024-06-08 13:17:11 -07:00
parent ccdb138bb8
commit 5488953436
No known key found for this signature in database
GPG key ID: C86B594396786760

View file

@ -112,11 +112,11 @@ When creating libraries that emit vnodes, you should use this module instead of
### Avoid anti-patterns
#### Avoid memoizing mutable vnodes
#### Avoid reusing vnodes
Vnodes are supposed to represent the state of the DOM at a certain point in time. Mithril.js' rendering engine assumes a reused vnode is unchanged, so modifying a vnode that was used in a previous render will result in undefined behavior.
Vnodes are supposed to represent the state of the DOM at a certain point in time. Mithril.js's rendering engine assumes a reused vnode is unchanged, so modifying a vnode that was used in a previous render will result in undefined behavior.
It is possible to reuse vnodes to prevent a diff, but it's preferable to use the `onbeforeupdate` hook to make your intent clear to other developers (or your future self).
It is possible to reuse vnodes in place to prevent a diff, but it's preferable to use the [`onbeforeupdate`](lifecycle.md#onbeforeupdate).
#### Avoid passing model data directly to components via attributes