Я довольно плохо знаком с фреймворком Loopback 4 и пытаюсь использовать его для небольшого проекта, который должен соединять данные из разных видов баз данных и сервисов.Одна из основных причин, по которой я использую версию 4, заключается в Typescript, а также в том, что он поддерживает функции ES7 (async / await), что мне очень нравится.Тем не менее, я понятия не имею, как реализовать проверку модели, по крайней мере, не так, как поддерживает Loopback v3.
Я пытался реализовать пользовательскую проверку для конструкторов модели, но это выглядит как очень плохой шаблон для подражания.
import {Entity, model, property} from '@loopback/repository';
@model()
export class Person extends Entity {
@property({
type: 'number',
id: true,
required: true,
})
id: number;
@property({
type: 'string',
required: true,
})
name: string;
@property({
type: 'date',
required: true,
})
birthDate: string;
@property({
type: 'number',
required: true,
})
phone: number;
constructor(data: Partial<Person>) {
if (data.phone.toString().length > 10) throw new Error('Phone is not a valid number');
super(data);
}
}