diff --git a/packages/reactivity/src/effect.ts b/packages/reactivity/src/effect.ts index 8a54372cd5b..f1799a62d3a 100644 --- a/packages/reactivity/src/effect.ts +++ b/packages/reactivity/src/effect.ts @@ -276,8 +276,9 @@ export function trigger( // trigger all effects for target deps = [...depsMap.values()] } else if (key === 'length' && isArray(target)) { + const newLength = toNumber(newValue) depsMap.forEach((dep, key) => { - if (key === 'length' || key >= toNumber(newValue)) { + if (key === 'length' || key >= newLength) { deps.push(dep) } })