将表格区块从引用转为复制时报错 schemaInstance.getServerHooksByType is not a function

版本:2.0.19
操作:

  1. 在v2页面创建一个表格区块,进行相应的配置后,保存为模板;
  2. 在另外一个v2页面上添加区块,引用该模板,因为需要调整,因此选择将此模板区块转换为复制;

结果:复制过程报错 schemaInstance.getServerHooksByType is not a function。

{"level":"info","message":"request POST /api/flowModels:duplicate?uid=011b8daa72a","method":"POST","path":"/api/flowModels:duplicate?uid=011b8daa72a","req":{"header":{"x-role":"admin","x-hostname":"192.168.1.93","x-timezone":"+08:00","x-locale":"zh-CN","x-authenticator":"ldap"}},"app":"main","reqId":"4b3f33dd-78f8-4374-9b5b-5803229a0a11","timestamp":"2026-03-20 09:52:40"}
{"level":"error","message":"schemaInstance.getServerHooksByType is not a function","extra":{"method":"error-handler","err":"TypeError: schemaInstance.getServerHooksByType is not a function\n  at ServerHooks.callSchemaInstanceHooksByType (/app/nocobase/node_modules/@nocobase/plugin-ui-schema-storage/dist/server/server-hooks/index.js:64:35)\n  at ServerHooks.onUiSchemaMove (/app/nocobase/node_modules/@nocobase/plugin-ui-schema-storage/dist/server/server-hooks/index.js:76:16)\n  at _AsyncEmitter.<anonymous> (/app/nocobase/node_modules/@nocobase/plugin-ui-schema-storage/dist/server/server-hooks/index.js:55:18)\n  at run (/app/nocobase/node_modules/@nocobase/utils/lib/mixin/AsyncEmitter.js:49:19)\n  at _AsyncEmitter.emitAsync (/app/nocobase/node_modules/@nocobase/utils/lib/mixin/AsyncEmitter.js:63:13)\n  at _FlowModelRepository.insertSingleNode (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/repository.js:796:29)\n  at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n  at async _FlowModelRepository.duplicate (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/repository.js:479:7)\n  at async descriptor.value (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/repository.js:75:27)\n  at async duplicate (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/server.js:142:30)\n  at async middleware (/app/nocobase/node_modules/@nocobase/plugin-workflow-request-interceptor/dist/server/RequestInterceptionTrigger.js:143:5)\n  at async triggerWorkflowActionMiddleware (/app/nocobase/node_modules/@nocobase/plugin-workflow-action-trigger/dist/server/ActionTrigger.js:61:7)\n  at async dataTemplate (/app/nocobase/node_modules/@nocobase/server/lib/middlewares/data-template.js:36:3)\n  at async /app/nocobase/node_modules/@nocobase/plugin-ui-templates/dist/server/plugin.js:215:9\n  at async app.acl.use.after (/app/nocobase/node_modules/@nocobase/plugin-acl/dist/server/server.js:563:9)\n  at async middlewares.add.tag (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:425:9)\n  at async /app/nocobase/node_modules/@nocobase/acl/lib/allow-manager.js:118:7\n  at async ACLMiddleware (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:314:14)\n  at async app.resourcer.use.group (/app/nocobase/node_modules/@nocobase/plugin-api-keys/dist/server/plugin.js:62:9)\n  at async blockChinaRegionList (/app/nocobase/node_modules/@nocobase/plugin-field-china-region/dist/server/index.js:57:9)\n  at async /app/nocobase/node_modules/@nocobase/plugin-multi-app-manager/dist/server/server.js:288:7\n  at async setMainDepartment (/app/nocobase/node_modules/@nocobase/plugin-departments/dist/server/middlewares/set-main-department.js:34:3)"},"meta":{"err":"TypeError: schemaInstance.getServerHooksByType is not a function\n  at ServerHooks.callSchemaInstanceHooksByType (/app/nocobase/node_modules/@nocobase/plugin-ui-schema-storage/dist/server/server-hooks/index.js:64:35)\n  at ServerHooks.onUiSchemaMove (/app/nocobase/node_modules/@nocobase/plugin-ui-schema-storage/dist/server/server-hooks/index.js:76:16)\n  at _AsyncEmitter.<anonymous> (/app/nocobase/node_modules/@nocobase/plugin-ui-schema-storage/dist/server/server-hooks/index.js:55:18)\n  at run (/app/nocobase/node_modules/@nocobase/utils/lib/mixin/AsyncEmitter.js:49:19)\n  at _AsyncEmitter.emitAsync (/app/nocobase/node_modules/@nocobase/utils/lib/mixin/AsyncEmitter.js:63:13)\n  at _FlowModelRepository.insertSingleNode (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/repository.js:796:29)\n  at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n  at async _FlowModelRepository.duplicate (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/repository.js:479:7)\n  at async descriptor.value (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/repository.js:75:27)\n  at async duplicate (/app/nocobase/node_modules/@nocobase/plugin-flow-engine/dist/server/server.js:142:30)\n  at async middleware (/app/nocobase/node_modules/@nocobase/plugin-workflow-request-interceptor/dist/server/RequestInterceptionTrigger.js:143:5)\n  at async triggerWorkflowActionMiddleware (/app/nocobase/node_modules/@nocobase/plugin-workflow-action-trigger/dist/server/ActionTrigger.js:61:7)\n  at async dataTemplate (/app/nocobase/node_modules/@nocobase/server/lib/middlewares/data-template.js:36:3)\n  at async /app/nocobase/node_modules/@nocobase/plugin-ui-templates/dist/server/plugin.js:215:9\n  at async app.acl.use.after (/app/nocobase/node_modules/@nocobase/plugin-acl/dist/server/server.js:563:9)\n  at async middlewares.add.tag (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:425:9)\n  at async /app/nocobase/node_modules/@nocobase/acl/lib/allow-manager.js:118:7\n  at async ACLMiddleware (/app/nocobase/node_modules/@nocobase/acl/lib/acl.js:314:14)\n  at async app.resourcer.use.group (/app/nocobase/node_modules/@nocobase/plugin-api-keys/dist/server/plugin.js:62:9)\n  at async blockChinaRegionList (/app/nocobase/node_modules/@nocobase/plugin-field-china-region/dist/server/index.js:57:9)\n  at async /app/nocobase/node_modules/@nocobase/plugin-multi-app-manager/dist/server/server.js:288:7\n  at async setMainDepartment (/app/nocobase/node_modules/@nocobase/plugin-departments/dist/server/middlewares/set-main-department.js:34:3)"},"module":"flowModels","submodule":"duplicate","method":"error-handler","app":"main","reqId":"4b3f33dd-78f8-4374-9b5b-5803229a0a11","dataSourceKey":"main","timestamp":"2026-03-20 09:52:41"}
{"level":"error","message":"response /api/flowModels:duplicate?uid=011b8daa72a","method":"POST","path":"/api/flowModels:duplicate?uid=011b8daa72a","res":[{"message":"schemaInstance.getServerHooksByType is not a function"}],"action":{"actionName":"duplicate","resourceName":"flowModels","params":{"uid":"011b8daa72a","resourceName":"flowModels","actionName":"duplicate","values":{}}},"userId":2,"username":"jhp","status":500,"cost":754,"app":"main","reqId":"4b3f33dd-78f8-4374-9b5b-5803229a0a11","bodySize":80,"timestamp":"2026-03-20 09:52:41"}

你好 ,没有复现你的问题 ctrl + F5 刷新下浏览器 再尝试下