获取器的作用是对模型实例的(原始)数据做出自动处理。一个获取器对应模型的一个特殊方法(该方法必须为public类型),方法命名规范为:

getFieldNameAttr

FieldName为数据Key的驼峰转换,定义了获取器之后会在下列情况自动触发:

  • 验证器读取数据

获取器的场景包括:

  • 时间日期字段的格式化;
  • 集合或枚举类型;
  • 数字状态字段;
  • 组合字段;

# 使用获取器

例如,我们需要对状态值进行转换,可以使用:

class TestGetter extends BaseGetter{
    getStatusAttr(value){
        if (value === '正常'){
            return 0;
        }
        return 1;
    }
}

获取器方法的第二个参数传入的是当前的所有数据数组。

# 动态扩展获取器方法

支持对获取器动态扩展方法,无需在获取器类中定义


 






const getter = new TestGetter();
getter.extend('getStatusAttr',function(value) {
  if (value === '正常'){
      return 0;
  }
  return 1;
})

# 动态获取器

可以支持对验证器的方法getGetter获取一个默认的获取器,然后进行扩展,无需单独实例化一个获取器,此方法得到的获取器无需注册


 







const v = new Validate();
const getter = v.getGetter()
getter.extend('getStatusAttr',function(value) {
  if (value === '正常'){
      return 0;
  }
  return 1;
})