Issue #1547💬 RespondidoAbierto el 29 de octubre de 2018por ploutos27Reacciones 0

Cómo añadir atributos de componentes (antes de renderizar)

Respuesta rápidapor artf

Por lo que veo, por cómo creas los bloques, no tiene nada que ver con el renderizado de los componentes, por ejemplo. 'parameters="null"' es nulo porque 'arrBlocks[j].value.parameters' es nulo, eso es todo

Lee la respuesta completa abajo ↓

Pregunta

Hola,

Estoy buscando crear automáticamente componentes dentro de un elemento de bloque y parece que lo consigo, pero con un pequeño que falta... ¿Cómo puedo pasar atributos de componentes para cada uno?

El código está abajo y crea varios bloques. Cada bloque tiene un tipo diferente de componente. Al pasar el array blcoks dentro del objeto componente, consigo imprimir y activar los grapesjs para que impriman cada componente, pero desafortunadamente sin los atributos (mira img al final)

Ahora, como los componentes no se renderizan pero se generan como bloques, necesito almacenar de alguna manera los atributos dentro del modelo de cada componente y, después de que un usuario use ese bloque en particular, los atributos del componente coincidan

<a href="http://tinypic.com?ref=2e3qwyq" target="_blank"><img src="http://i68.tinypic.com/2e3qwyq.png" border="0" alt="Alojamiento de imágenes y vídeo por TinyPic"></a>

        para (sea j = 0; j < arrBlocks.length; j++) {
            if (arrBlocks[j].value.type === 'ninguno') {
                blockManager.add(arrBlocks[j].value.code, {
                    label: '<div class="gjs-block-label">${arrBlocks[j].value.code}</div>',
                    atributos: {
                        Clase: 'GJS-Fonts GJS-F-B1',
                        tipo: 'bloquear',
                    },
                    Tipo: 'Componente',
                    categoría: { id: 'bloqueo', etiqueta: 'Bloqueos', abierto: verdadero },
                    Contenido: {
                        Clases: ['Contenedor de bloque'],
                        Tipo: 'bloque-contenedor',
                        componentes: arrBlocks[j].value.blocks,
                        copiable: falso,
                        atributos: {
                            id: parseInt(arrBlocks[j].value.id, 10),
                            código: arrBlocks[j].value.code,
                            tipo: arrBlocks[j].valor.tipo,
                            parámetros: arrBlocks[j].valor.parámetros,
                            typeId: arrBlocks[j].value.typeId,
                            encabezado: arrBlocks[j].value.header || " ",
                            contenido: arrBlocks[j].value.content,
                            clases: arrBlocks[j].value.classes,
                            acciones: arrBlocks[j].value.actions,
                            filter: [arrBlocks[j].value.filter.locale, arrBlocks[j].value.filter.session],
                        },
                    }
                });
            }
        }

Respuestas (2)

artf2 de noviembre de 2018

Por lo que veo, por cómo creas los bloques, no tiene nada que ver con el renderizado de los componentes, por ejemplo. 'parameters="null"' es nulo porque 'arrBlocks[j].value.parameters' es nulo, eso es todo

lock[bot]2 de noviembre de 2019

Este hilo se ha bloqueado automáticamente porque no ha habido actividad reciente desde que se cerró. Por favor, abre un nuevo problema para bugs relacionados.

Preguntas y respuestas relacionadas

Continúa investigando con debates sobre temas similares.

Plugins de pago que cumplen con este problema

Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.

Ver todos los plugins

Cargando recomendaciones de plugins de pago...

Opción gratuita

Consulta los plugins de código abierto de GrapesJS en GitHub O haz una búsqueda rápida en nuestro catálogo gratuito.

Explora plugins gratuitos →
Opción premium

Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.

Explora plugins premium →

Tutoriales relacionados

Guías detalladas sobre el mismo tema.

Todos los tutoriales →

Explorar categorías de plugins

Ve directamente a las páginas de categorías de plugins en el marketplace.