From 2f57076d00da9d77bccc79ab5ea37cf29b055759 Mon Sep 17 00:00:00 2001 From: Junyi Date: Wed, 25 Sep 2024 19:51:49 +0800 Subject: [PATCH] fix(plugin-workflow): fix non-existed field in collection trigger cause error (#5318) --- .../src/server/triggers/CollectionTrigger.ts | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/CollectionTrigger.ts b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/CollectionTrigger.ts index 385ddf7591..7b5487a184 100644 --- a/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/CollectionTrigger.ts +++ b/packages/plugins/@nocobase/plugin-workflow/src/server/triggers/CollectionTrigger.ts @@ -59,9 +59,10 @@ async function handler(this: CollectionTrigger, workflow: WorkflowModel, data: M changed && changed.length && changed - .filter( - (name) => !['linkTo', 'hasOne', 'hasMany', 'belongsToMany'].includes(collection.getField(name).options.type), - ) + .filter((name) => { + const field = collection.getField(name); + return field && !['linkTo', 'hasOne', 'hasMany', 'belongsToMany'].includes(field.options.type); + }) .every((name) => !data.changedWithAssociations(getFieldRawName(collection, name))) ) { return;