Issue #2177✓ ResueltoAbierto el 31 de julio de 2019por alikabeer32Reacciones 3

Cómo crear un bloque con contenido HTML, CSS y JavaScript.

Respuesta rápidapor pouyamiralayi2

¡Hola! Lo que buscas es aquí editor. DomComponents.addType('custom-type',{ modelo:{ valores predeterminados:{ script: función () { console.log('hola mundo'); } }, isComponent(){ Retorno verdadero } }, }) Debes definir el tipo personalizado antes de tu definición de bloque. Luego, en tu contenido de bloque, modifica es...

Lee la respuesta completa abajo ↓

Pregunta

¿Alguien podría mostrarme un ejemplo de código de cómo crear un bloque con estilos javascript y css? '''js

editor. BlockManager.add('a_block', { etiqueta: 'Sample Block', Contenido: '<style> .sampleclass{ acolchado: 10px 15px; } .sampleclass2{ opacidad:0; visibilidad:oculta; } .sampleclass:hover > .sampleclass2{ visibilidad:visible; opacidad:1; }

@media (ancho máximo: 768px){ .sampleclass{ ancho:100%; } } </style> <div class="samplecalss">Text<div class="sampleclass2"><div><a>A Enlace</a></div></div> <script> console.log('hola mundo'); </script> `, atributos: { título: 'Bloque A' },
});


El principal problema es que el código js se añade justo después del html en lugar de al final del archivo

Respuestas (3)

👍 Muy útilpouyamiralayi2 de agosto de 2019
Fragmento de códigoTEXT
¡Hola! Lo que buscas es [aquí](https://grapesjs.com/docs/modules/Components-js.html)
`
editor. DomComponents.addType('custom-type',{
            modelo:{
                valores predeterminados:{
                    script: función () {
                        console.log('hola mundo');
                    }
                },
                isComponent(){
                    Retorno verdadero
                }
            },
        })
`
Debes **definir el tipo personalizado** antes de tu **definición de bloque**.
Luego, en tu contenido de bloque, modifica esta línea para inyectar tu tipo:
`
          <div data-gjs-type="custom-type" class="sampleclass">Text<div class="sampleclass2"><div><a>A Enlace</a></div></div></div>
`
**Fíjate** que para usar tipos personalizados, deben estar definidos en un plugin por el momento. Más información [aquí](https://grapesjs.com/docs/modules/Plugins.html)
Salud.
alikabeer322 de agosto de 2019

Gracias.

alikabeer322 de agosto de 2019

Gracias.

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.