Как узнать, заполнены ли все поля в схеме или нет? - PullRequest
0 голосов
/ 29 января 2020

У меня есть следующая схема:

Как проверить, заполнены ли все поля в схеме или нет?

интерфейс (реакция. js) имеет в процессе посадки, где им нужны пользователи, которые впервые вошли в систему до go в процессе пересылки, и пользователи, которые вошли в систему во второй или более раз для отправки на другую страницу. Таким образом, они требуют от меня логического значения. Как узнать, все ли данные заполнены?

const userSchema = mongoose.Schema({
  phoneNumber: { type: String },
  role: { type: String, default: 'user' },
  userDetails: {
    firstName: { type: String },
    lastName: { type: String },
    userName: { type: String },
    password: { type: String },
    email: { type: String },
    street_1: { type: String },
    street_2: { type: String },
    landmark: { type: String },
    city: { type: String },
    state: { type: String },
    zipcode: { type: String },
  },
  kycDetails: {
    aadharNumber: { type: String },
    aadharFront: {
      type: String,
    },
    aadharBack: {
      type: String,
    },
    panNumber: { type: String },
    panImage: {
      type: String,
    },
  },
  bankDetails: {
    accountNumber: { type: String },
    accountName: { type: String },
    bankName: { type: String },
    ifscCode: { type: String },
  },
});

1 Ответ

0 голосов
/ 29 января 2020

Вы можете использовать пакет проверки https://ajv.js.org/, чтобы проверить все поля, которые вы хотите, используя Json

, например

const nSchema = {
    type: 'object',
    properties: {
        phoneNumber: {type: 'string'},
        role: {type: 'string', enum:['user']},
    },
    required: ['phoneNumber', 'role'],
    additionalProperties: false
};
const valid = ajv.validate(nSchema, data);
if (!valid) {

}

...