Gutenberg setAttributes no actualiza mi área de edición

1 minuto de lectura

¿Cómo puedo vincular mis elementos HTML en Gutenberg a una matriz/objeto?

Hola, estoy programando un bloque de Gutenberg ahora y solo quería vincular un objeto a mi bloque pero no se actualiza. Actualmente tengo una lista de

  • ‘s y quería agregarse automáticamente si presiono el botón “¡Haz clic en mí!” Botón.

    Lo que hace es… Si presiono ese botón, empuja el nuevo elemento en la matriz, pero el

  • No se agregan elementos. Si hago clic fuera (si el bloque pierde el foco), se agregan los elementos.

    ¿Qué hice mal?

    edit: props => {
            const { setAttributes, attributes } = props;
            let slides = props.attributes.slides;
    
            const addSlide = function(event){
                slides.push({ title : 'new' });
                setAttributes({ slides: slides });
            }
    
    
    
    
            return [
                <InspectorControls key="inspector">
                    <PanelBody
                        title={'Slides'}
                        initialOpen={true}
                    >
    
                    {slides.map((slide, i) =>
                        <li key={i}>
                        {slide.title}
                        </li>
                    )}
    
    
                    <Button isPrimary onClick={addSlide}>
                        Click me!
                    </Button>
    
                    </PanelBody>
                </InspectorControls>,
                <div className={ props.className } key='richtext'>
    
                    {slides.map((slide, i) =>
                        <li key={i}>
                        {slide.title}
                        </li>
                    )}
    
                    <Button isPrimary onClick={addSlide}>
                        Click me!
                    </Button>
    
                </div>
            ];
        }
    

    Espero que los elementos de la lista se agreguen dinámicamente mientras se usa fox.

    • Estoy teniendo el mismo problema. ¿Lo resolviste alguna vez?

      – Simón

      16 de diciembre de 2019 a las 15:11

    • He tenido cierto éxito al hacer esto para forzar una actualización: setAttributes({ diapositivas: diapositivas, fecha: nueva Fecha });

      – Simón

      16 de diciembre de 2019 a las 16:39

    ¿Ha sido útil esta solución?