en vtex.io cual es la diferencia entre usar un bloque con composición children o uno con composición blocks

en vtex.io cual es la diferencia entre usar un bloque con composición children o uno con composición blocks Ej.

"flex-layout.col#drawer": {

"props": {

"blockClass": "menu-drawer"

},

"children": ["drawer"]

},

"drawer": {

"blocks": ["drawer-header#my-drawer"],

"children": ["menu#drawer"],

"props": {

"blockClass": ["menu-drawer"]

}

},

Excelente pregunta, creo que muchos tienen esta pregunta también y yo tenía esta duda desde hace mucho tiempo. Para comprender mejor, es necesario comprender la composición de los componentes react diseñados para ser nativos de VTEX IO. Al mirar el repo de cada app VTEX, verás el patrón que sigue en la construcción de cada una de ellas. Lo pueden leer aquí: https://developers.vtex.com/vtex-developer-docs/docs/vtex-io-documentation-composition, ahí también habla de esta diferencia. Pero básicamente, utiliza bloques para enumerar varios componentes “independientes”, dentro de un bloque, generalmente de layout, ya sea dentro de un flex-layout, stick-layout, shelf, modal, etc. Ya children, lo usa para crear una lista de componentes secundarios existentes del mismo componente donde declara, un ejemplo es product-summary, donde llama a varios otros componentes secundarios como product-summary-name, product-summary-description, etc.