validate.js 1.27 KB
/**
 * Created by PanJiaChen on 16/11/18.
 */

/**
 * @param {string} path
 * @returns {Boolean}
 */
export function isExternal(path) {
  return /^(https?:|mailto:|tel:)/.test(path)
}

/**
 * @param {string} str
 * @returns {Boolean}
 */
export function validUsername(str) {
  const validMap = ['admin', 'editor']
  return validMap.indexOf(str.trim()) >= 0
}
/**
 * 模型名称校验函数
 * @param {*} rule
 * @param {*} value
 * @param {*} callback
 */
export function validateName(rule, value, callback) {
  if (!value) {
    return callback(new Error('模型名称不能为空'))
  }
  if (/(^\s+)|(\s+$)/.test(value)) {
    return callback(new Error('首字符和尾字符不得为空格'))
  }
  if (value.length < 2 || value.length > 10) {
    return callback(new Error('长度在 2 到 10 个字符'))
  }
  callback()
}
/**
 * 模型描述校验函数
 * @param {*} rule
 * @param {*} value
 * @param {*} callback
 */
export function validateDes(rule, value, callback) {
  if (!value) {
    return callback(new Error('模型描述不能为空'))
  }
  if (/(^\s+)|(\s+$)/.test(value)) {
    return callback(new Error('首字符和尾字符不得为空格'))
  }
  if (value.length < 2 || value.length > 20) {
    return callback(new Error('长度在 2 到 20 个字符'))
  }
  callback()
}