MCPcopy
hub / github.com/didi/mpx / setValidator

Method setValidator

packages/fetch/src/xfetch.js:107–129  ·  view source on GitHub ↗
(options)

Source from the content-addressed store, hash-verified

105 }
106
107 setValidator (options) {
108 // 添加校验配置
109 if (isNotEmptyObject(options)) {
110 const preValidatorOptions = this.validatorOptions || {}
111 this.validatorOptions = options || {}
112 Object.keys(this.validatorOptions).forEach(key => {
113 const preOption = preValidatorOptions[key]
114 const option = this.validatorOptions[key]
115 const objectRule = key === 'rules' && isNotEmptyObject(option)
116 const stringRule = (key === 'exclude' || key === 'include') && isString(option)
117 const isEnv = key === 'env'
118 if (isNotEmptyArray(option)) {
119 this.validatorOptions[key] = isArray(preOption) ? preOption.concat(option) : option
120 } else if (objectRule || stringRule) {
121 this.validatorOptions[key] = isArray(preOption) ? preOption.concat([option]) : [option]
122 } else if (isEnv) {
123 this.validatorOptions[key] = isObject(preOption) ? Object.assign({}, preOption, option) : option
124 } else {
125 console.error('rules仅支持不为空的数组或对象, include和exclude仅支持不为空的字符串或对象')
126 }
127 })
128 }
129 }
130
131 getValidator () {
132 // 返回校验配置

Callers

nothing calls this directly

Calls 8

isNotEmptyObjectFunction · 0.90
isStringFunction · 0.90
isNotEmptyArrayFunction · 0.90
isArrayFunction · 0.90
isObjectFunction · 0.90
forEachMethod · 0.80
keysMethod · 0.80
errorMethod · 0.45

Tested by

no test coverage detected