Как сгенерировать проверки Joi с помощью кода на основе объекта и сохранить его в файле, используя Nodejs - PullRequest
1 голос
/ 11 июля 2020

Я пытаюсь сгенерировать проверки Joi с помощью кода на основе объекта. Я хотел бы знать, есть ли способ сгенерировать их программно и сохранить в файл. Я пробовал следующий способ:

Допустим, у меня есть следующий объект:

let obj = [{
  Key: 'key1',
  Type: 'string'  
}]

Функция для создания объекта проверки Joi:

function getJoiObject(data) {
    const obj = {};
    Object.keys(data).forEach(key => {
        if (data[key].Type === "string")
            obj[data[key].Key] = Joi.string();
        else if (data[key].Type === "integer")
            obj[data[key].Key] = Joi.number();
        else if (data[key].Type === "boolean")
            obj[data[key].Key] = Joi.boolean();
    });
    return obj;
} 

I сохранил объект в файл и использовал его в другом файле для проверки.

 fs.writeFileSync('validations.json', JSON.stringify({res:getJoiObject(obj)}));

Проблема в том, что когда я импортирую проверки. json в другой файл и проверяю его данными, он не работа.

const a = {key1:'abc'};
Joi.object(validations.res).validate(a)

Не могли бы вы помочь.

Заранее спасибо.

...