¿Cómo puedo cambiar el formato de un campo de Número de KeystoneJS?
-
23-12-2019 - |
Pregunta
Su propiedad 'referenceId' que me gustaría formato.Heres mi modelo de código:
var keystone = require('keystone'),
Types = keystone.Field.Types;
var Stock = new keystone.List('Stock', {
map: { name: 'adminDisplayTitle' },
autocreate: true
});
Stock.add({
adminDisplayTitle: { type: String, required: true , default: 'Title to show in this Admin UI'},
referenceId: { type: Number, required: true },
country: {
type: Types.Select,
options: [
{ value: 'sv', label: 'Sweden' },
{ value: 'fi', label: 'Finland' },
{ value: 'dk', label: 'Denmark' }
],
required: true
},
author: { type: Types.Relationship, ref: 'User' },
rating: { type: String, required: true },
rate: { type: Number, required: true },
published: { type: Boolean, default: false }
});
Stock.defaultColumns = 'adminDisplayTitle, referenceId, author, createdAt';
Stock.register();
Hay alguna forma de declarar el formato en el interior de la modelo ?Me parece que no puede entender la documentación para esta parte.
Heres una imagen del campo con una coma dentro de si, que me quiere deshacerse de como este es un número de referencia, no un valor de ese tipo.
Solución
Los campos de número de en KeystoneJS el uso de la numeral.js biblioteca para dar formato a valores.
Hay una opción que se puede configurar en el campo para el control de la cadena de formato predeterminado, que puede ser cualquier formato válido que el numeral sabe qué hacer con el correo.g:
referenceId: { type: Number, format: '0', required: true }
La Administración de interfaz de usuario será siempre el formato del valor de uso de la cadena en el format
opción.Para eliminar todo el formato (por ejemplo,delimitador de miles) acaba de establecer este a '0', como en el ejemplo anterior.
Usted puede utilizar el formato por defecto en la plantilla mediante el .format
subrayado método en el artículo:
div= stockItem._.format()
El subrayado método acepta un argumento de cadena que invalida el format
opción que se establece en el Modelo, por lo que se puede hacer de manera diferente en sus plantillas, por ejemplo,
div= stockItem._.format('0,0');
La cadena de formato predeterminado para el Número de campos es '0,0[.][000000000000]'