@jswork/jzyunqi-interceptors
Version:
Interceptors for jzyunqi/yw.
51 lines (50 loc) • 1.47 kB
JavaScript
;
/*!
* 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
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
/**
* 处理场景如下:
* 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(',')
*/
var next_1 = __importDefault(require("@jswork/next"));
require("@jswork/next-deep-each");
function suffixArray(options) {
var data = options.data;
if (!data || typeof data !== 'object')
return options;
next_1.default.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;
}
exports.default = suffixArray;