|
|
- const _cloneDeep = require('lodash/cloneDeep')
-
- // 移除空字符串,null, undefined
- export function clearEmptyParam(config) {
- ['data', 'params'].forEach(item => {
- if (config[item]) {
- const keys = Object.keys(config[item])
- if (keys.length) {
- keys.forEach(key => {
- const rawType = toRawType(config[item])
- if (['', undefined, null].includes(toRawType(config[item][key]) == 'String' ?
- config[item][key].trim() : config[item][key]) && ['Object'].includes(
- rawType)) {
- // 移除属性之前,进行深拷贝断开引用,避免影响页面
- config[item] = _cloneDeep(config[item])
- delete config[item][key]
- }
- })
- }
- }
- })
- }
-
- /**
- * @description 获取原始类型
- * @param {*} value
- * @returns {String} 类型字符串,如'String', 'Object', 'Null', 'Boolean', 'Number', 'Array'
- */
- export function toRawType(value) {
- return Object.prototype.toString.call(value).slice(8, -1)
- }
-
- export default {
- clearEmptyParam
- }
|