问题描述
NocoBase FlowEngine 模块存在调试日志污染生产环境控制台的问题。
影响范围
dockerb部署的v2.0.54
@nocobase/flow-engine 包
涉及文件:
packages/core/flow-engine/src/models/flowModel.tsx:780
packages/core/flow-engine/src/flowEngine.ts:730
具体表现
浏览器控制台输出以下日志:
[FlowModel] dispatchEvent: uid=xxx, event=beforeRender, isFork=true, cleanRun=true, targetIsFork=true
FlowEngine: Model with UID 'xxx' does not exist.
问题根因
- flowModel.tsx:780 中的 console.log 在每次 dispatchEvent 时都会输出,在页面渲染流程模型时高频触发
- flowEngine.ts:730 中的 console.warn 在 moveModel 清理孤儿引用时触发
两处日志均为无条件输出,未使用 process.env.NODE_ENV === ‘development’ 或类似方式在生产环境跳过。
期望行为
- 生产环境的浏览器控制台不应出现框架层的调试日志
- 建议参考其他 NocoBase 模块的做法,使用带环境判断的日志方案(如 if (process.env.NODE_ENV !== ‘production’)),或使用内部 logger 替代原生 console.*