diff --git a/packages/runtime-core/src/componentProps.ts b/packages/runtime-core/src/componentProps.ts index 9fc2ac78b88..40a4a31494d 100644 --- a/packages/runtime-core/src/componentProps.ts +++ b/packages/runtime-core/src/componentProps.ts @@ -156,8 +156,10 @@ export function updateProps( const [options] = instance.propsOptions if ( - // always force full diff if hmr is enabled - !(__DEV__ && instance.type.__hmrId) && + // always force full diff in dev + // - #1942 if hmr is enabled with sfc component + // - vite#872 non-sfc component + !__DEV__ && (optimized || patchFlag > 0) && !(patchFlag & PatchFlags.FULL_PROPS) ) {