Cómo cambiar el desplegable extra para el rasgo de cambio de enlace
Crea un rasgo personalizado: https://grapesjs.com/docs/modules/Traits.html
Lee la respuesta completa abajo ↓Pregunta
Hola @artf, Quiero dar una funcionalidad más al usuario, como que el usuario pueda cambiar cualquier enlace con el desplegable de enlaces por defecto.
En la imagen de arriba quiero añadir un desplegable más para los enlaces predeterminados.
Si el usuario selecciona los enlaces desde el desplegable, también debe cambiar el 'href' del enlace seleccionado y, por otro lado, si el usuario escribe el enlace en el cuadro de texto de entrada 'href' (marcado en la imagen superior), también debe cambiar el href de los enlaces seleccionados.
¿Cómo puedo hacer estas cosas? ¿Podrías ayudarme, por favor?
Respuestas (3)
Crea un rasgo personalizado: https://grapesjs.com/docs/modules/Traits.html
Hola @artf Si solo quiero cambiar el rasgo de la etiqueta href('<a'), ¿cómo puedo cambiar eso? Intenté como,
'''var domComps = editor. DomComponents; var dType = domComps.getType('default'); var dModel = dType.model; var dView = dType.view;
domComps.addType('a', { model: dModel.extend({ defaults: Object.assign({}, dModel.prototype.defaults, { Rasgos: [ Las cadenas se convierten automáticamente en tipos de texto { tipo: 'select', etiqueta: 'Href', Nombre: 'Href', Opciones: [ {valor: 'index.html', nombre: 'Hogar'}, {valor: 'index2.html', nombre: 'Home2'}, {valor: 'index3.html', nombre: 'Home3'}, {valor: 'index4.html', nombre: 'Home4'}, ] } ], }), }, { isComponent: function(el) { if(el.tagName == 'a'){ return {tipo: 'a'}; } }, }),
vista: dVista, });```
Pero esto es algo así como que no funciona. ¿Podríais ayudarme a ver en qué estoy fallando?
Y una pregunta más, ¿cómo puedo comprobar el tipo del elemento DOM seleccionado? Supongo que usará la función 'isComponent'. Pero no sé cómo usarlo ni dónde.
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #416
Carga de imagen con problema cruzado en Origin
He revisado todo el historial de problemas, pero no he encontrado una solución. ! por defecto He cambiado aquí para permitir que Fetch pued...
Issue #417
Añadir el botón de Configuración a un componente personalizado.
Hola, ¿Cómo puedo crear una configuración o puedes editar, por ejemplo, un botón de edición para mi componente personalizado? Con la cuarta...
Issue #1695
Añadiendo nuevo rasgo al componente de vídeo
! captura de pantalla del 25-14-14-2018 Quiero añadir un nuevo rasgo para el componente existente de VÍDEO. Sigo la documentación y no enco...
Issue #1597
¿Podemos añadir una propiedad redimensionable en el marco gjs-layer-manager?
Hola @artf ¿Es posible añadir la propiedad de redimensionable en el fotograma del gestor de capas como captura de pantalla abajo? ! captura...
Plugins de pago que cumplen con este problema
Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.
Cargando recomendaciones de plugins de pago...
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 →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.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.