Why is onChange={ ( content ) => setAttributes( { content } )} now used?
-
26-04-2021 - |
Question
Looking through older tutorials or code for blocks built in 2018/2019 vs the more current blocks, I see two different ways attribute values are set.
For example, the "old" way for an attribute called "content" might be:
onChange={ (newContent) => setAttributes({ content: newContent })}
Whereas in a more modern block:
onChange={ ( content ) => setAttributes( { content } )}
I get it's a minor change but I'm curious if anyone here knows why.
Thanks!
Solution
Because { content }
is shorthand for { content: content }
it's a JS thing not a WordPress thing.
Both methods work and do the same thing, but the { content }
syntax is shorter, so the variable was named content
in newer examples to allow it.
Otherwise, there are no security or performance improvements, it's just a shorter syntax for the same thing.