instance.attrs = attrs
}
+function isInHmrContext(instance: ComponentInternalInstance | null) {
+ while (instance) {
+ if (instance.type.__hmrId) return true
+ instance = instance.parent
+ }
+}
+
export function updateProps(
instance: ComponentInternalInstance,
rawProps: Data | null,
// always force full diff in dev
// - #1942 if hmr is enabled with sfc component
// - vite#872 non-sfc component used by sfc component
- !(
- __DEV__ &&
- (instance.type.__hmrId ||
- (instance.parent && instance.parent.type.__hmrId))
- ) &&
+ !(__DEV__ && isInHmrContext(instance)) &&
(optimized || patchFlag > 0) &&
!(patchFlag & PatchFlags.FULL_PROPS)
) {