返回 Bug 清单
BUG-1396project-02低已修复frontend-logic

showAprPresets presets.forEach is not a function — 后端路由不存在导致 res.data 非数组

发现:2026-10-17验证:2026-10-27置信度:85%

症状

用户点击审批预设模板按钮时浏览器抛 TypeError: presets.forEach is not a function, 预设弹窗打不开 (空数据场景).

根因

showAprPresets 调 apiGet('/v3/approval/flows/presets') — 后端 v3/approval/flows/presets 路由根本不存在 (grep 无匹配). apiGet 返回的 res.data 不是数组, 直接 presets.forEach 崩. 本质是前端调了不存在的 API 端点, 没加类型兜底.

修复方案

var presets = Array.isArray(res.data) ? res.data : [] — 前端加硬兜底, 不管后端返回啥都不会 throw. 版本号升 v=20261031 强制浏览器刷新.

错误签名

TypeError: presets.forEach is not a function at showAprPresets app.js:10087

技术信息

来源项目

project-02

涉及文件

bk_frontend/js/app.js, bk_frontend/index.html

标签

project-02, mcp-reported, source-agent