UNPKG

@jswork/jzyunqi-interceptors

Version:

Interceptors for jzyunqi/yw.

45 lines (44 loc) 1.2 kB
/*! * name: @jswork/jzyunqi-interceptors * description: Interceptors for jzyunqi/yw. * homepage: https://js.work * version: 1.0.12 * date: 2025-03-01 11:46:15 * license: MIT */ /** * 处理场景如下: * 1. 请求中存在 Array 结尾的字段 * 2. 请求中存在 IdArray 结尾的字段 * * 1. 检测逻辑为 * 1.1 字段 key 以 Array 结尾 * 1.2 字段 value 为数组,且为简单类型 * * 处理逻辑为 * 1. 字段 key 不变 * 2. 字段 value: join(',') * * 2. 检测逻辑为 * 2.1 字段 key 以 IdArray 结尾 * 2.2 字段 value 为数组,且为简单类型 * * 处理逻辑为 * 1. 字段 key 不变 * 2. 字段 value: join(',') */ import nx from '@jswork/next'; import '@jswork/next-deep-each'; export default function suffixArray(options) { var data = options.data; if (!data || typeof data !== 'object') return options; nx.deepEach(data, function (key, value, target) { if (String(key).endsWith('Array')) { if (Array.isArray(value) && value.every(function (item) { return typeof item !== 'object'; })) { target[key] = value.join(); } } }); return options; }