npm 包 generaljack 使用教程

介绍

generaljack 是一个非常实用的 npm 包,它提供了一种简单的方式来验证用户输入是否符合预期并提示错误信息。这个包的主要特点是易于使用,而且能够适应各种需求。

安装

npm install generaljack

使用

const GeneralJack = require('generaljack');

const schema = {
  name: 'string',
  age: 'number',
  email: {
    format: 'email'
  }
};

const user = {
  name: 'John Doe',
  age: 25,
  email: 'johndoe@test.com'
};

const result = GeneralJack.validate(user, schema);

if (result.valid) {
  console.log('The user input is valid!');
} else {
  console.error(result.errors);
}

深入学习

基本验证类型

  • string 字符串类型
  • number 数字类型
  • boolean 布尔类型
  • url URL 类型
  • email 电子邮件类型
  • array 数组类型

对于 string,你还可以定义如下其它属性:

  • minLength 最小长度
  • maxLength 最大长度

对于 number,你可以定义如下其它属性:

  • minimum 最小值
  • maximum 最大值

自定义验证类型

你可以通过 GeneralJack.addValidator 方法来添加自定义验证类型:

GeneralJack.addValidator('positiveNumber', (value) => {
  return typeof value === 'number' && value > 0;
});

const schema = {
  price: 'positiveNumber'
};

自定义验证错误消息

你可以通过 GeneralJack.addMessage 方法来添加自定义验证错误消息:

GeneralJack.addMessage('positiveNumber', (key, value) => {
  return `The value for '${key}' must be a positive number, but received '${value}'`;
});

const schema = {
  price: {
    type: 'positiveNumber',
    message: '价格必须为正数'
  }
};

组合验证类型

你可以通过 oneOfallOf 组合不同类型的验证:

const schema = {
  name: {
    oneOf: ['string', 'number']
  },
  age: {
    allOf: ['number', {
      minimum: 18
    }]
  }
};

结论

generaljack 是一个非常实用的 npm 包,它提供了一种简单的方式来验证用户输入是否符合预期并提示错误信息。通过本文的介绍和示例代码,你应该已经掌握了如何使用 generaljack 和它主要的特点。如果你需要更多的帮助,可以查看 官方文档GitHub 代码仓库

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/600673e1fb81d47349e53d54


纠错
反馈