¿Cómo añadir un nuevo tipo de propiedad (entero) a StyleManager?
Tenías razón, ahora funciona. Muchas gracias. ¡Gran proyecto!
Lee la respuesta completa abajo ↓Pregunta
Hola, Estoy intentando crear una propiedad personalizada de StyleManager con el tipo 'entero'.
Mi objetivo final es 'redefinir' cómo se muestran ciertas unidades. Por ejemplo, el usuario usa la unidad 'X' y entonces el valor real sería diferente en píxeles. (Una de las razones es el nuevo modo de arrastre, ya que usa píxeles, así que quiero mantener todos los valores en píxeles pero permitiendo al usuario usar otras unidades).
He comprobado las funciones disponibles y, ampliando la entrada de números 'enteros', debería poder conseguirlo. Pero me sale un error cuando intento extender el tipo 'entero'.
El código que probé:
const sm = editor. StyleManager;
const propModel = sm.getType('enterger').model;
sm.addType('converted_integer', {
model: propModel.extend({
Predeterminados: {
... propModel.prototype.defaults,
Unidades: [],
Unidad: '',
Paso: 1,
Min: '',
Max: ''
},
init() {
this.listenTo(this, 'change', this.valueChanged);
},
valueChanged(value) {
console.log("valor cambiado",esto);
},
}),
view: sm.getType('enterger').view.extend({
}),
isType: (valor) => {
si (value && value.type == 'converted_integer') {
return value;
}
},
});
Esto da un error: "No se puede establecer la propiedad 'ppfx' de indefinida"
Si no amplío la propiedad de vista, vuelve al tipo por defecto sin problemas. Si extiendo el tipo de entrada 'stack' no hay ningún problema.
¿Qué se requiere para una propiedad entera personalizada como esa? (Versión de GrapesJs:0.15.8)
Gracias por tu ayuda.
Respuestas (2)
Tenías razón, ahora funciona. Muchas gracias. ¡Gran proyecto!
En realidad, la propiedad entera tiene una implementación incorrecta de 'init' (lo corregiré en la próxima versión). Por ahora, actualiza tu método init con el código de abajo y prueba si funciona '''js init() { propModel.prototype.init.apply(esto, argumentos); this.listenTo(this, 'change', this.valueChanged); },
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #1475
[Pregunta] añadiendo filtro a StyleManager
Hola, Estoy intentando añadir una propiedad de filtro a Styles. El problema que tengo es que la propiedad exige 2 argumentos: 1. El tipo de...
Issue #2549
[PREGUNTA] Actualizar vista de componentes al cambiar la propiedad
Hola a todos, Estoy intentando crear un componente que actualice su vista en función del valor de una propiedad '''javascript editor. DomCo...
Issue #2189
[Pregunta] Cómo añadir la opción "Lista de pedidos/no ordenados" en rte/bloque personalizado
Hola Estoy intentando crear una lista ordenada con grapesjs. Intenté añadir lo siguiente al RTE: Y esto funciona si mi página está pre-rell...
Issue #1781
Añadir un prop de tipo tamaño fuente
Estoy intentando crear una propiedad tipo tamaño de fuente que me gustaría añadir al sector de dimensiones. Haciendo esto: Obteniendo el va...
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 →Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.