Search code examples
node.jsreactjsjoi

how can i validate image using Joi-browser in react


in the backend there is no issue i can upload the photo using POSTMAN but i cant upload from the client(react ) side its says 'image must be string'

// node backend schema validation

const Joi = require("joi-browser");
Joi.image = require("joi-image-extension");

const image = new mongoose.Schema({
image: {
    type: String,
    required: true,
  },

  })

// validation function
function validateEmployee(employee) {
  const schema = {
   image: Joi.image().required(),   
  };

FRONT-END REACT code ...

import Joi from 'joi-browser'
    
     schema = {
        _id: Joi.string(),
        fullName: Joi.string().required().label('Full Name'),
        email: Joi.string().required().label('Email'),
        phoneNumber: Joi.number().required().label('Phone Number'),
        branchId: Joi.string().required().label('Branch'),
        jobId: Joi.string().required().label('Job'),
        salary: Joi.number().required().label('Salary'),
        image: Joi.string().required().label('image'),
      }

Solution

  • i figured out on my own joi.any() did the trick and it worked !