KeystoneJS에서 숫자 필드의 형식을 어떻게 지정합니까?
-
23-12-2019 - |
문제
형식을 지정하려는 'referenceId' 속성입니다.내 모델 코드는 다음과 같습니다.
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();
모델 내부에서 서식을 선언하는 방법이 있나요?이 부분에 대한 문서를 이해할 수 없는 것 같습니다.
내부에 쉼표가 있는 필드 이미지는 다음과 같습니다. 이는 해당 종류의 값이 아닌 참조 ID이므로 제거하고 싶습니다.
해결책
숫자 필드 ~에 KeystoneJS 사용 숫자.js 값 형식 지정을 위한 라이브러리.
기본 형식 문자열을 제어하기 위해 필드에 설정할 수 있는 옵션이 있습니다. 이는 숫자가 무엇을 해야 할지 알고 있는 유효한 형식일 수 있습니다. 예:
referenceId: { type: Number, format: '0', required: true }
관리 UI는 항상 문자열을 사용하여 값의 형식을 지정합니다. format
옵션.모든 서식을 제거하려면(예:천 단위 구분 기호) 위의 예와 같이 이를 '0'으로 설정하면 됩니다.
다음을 사용하여 템플릿에서 기본 형식을 사용할 수 있습니다. .format
밑줄 방법 항목에:
div= stockItem._.format()
밑줄 메서드는 문자열 인수를 재정의하는 문자열 인수를 허용합니다. format
모델에 옵션이 설정되어 있으므로 템플릿에서 다르게 렌더링할 수 있습니다.
div= stockItem._.format('0,0');
숫자 필드의 기본 형식 문자열은 다음과 같습니다. '0,0[.][000000000000]'
제휴하지 않습니다 StackOverflow