fix(hmr): full diff props for non-sfc component (#2359)

close #https://github.com/vitejs/vite/issues/872
This commit is contained in:
underfin 2020-10-15 23:05:12 +08:00 committed by GitHub
parent c6443a43c9
commit e78915a740
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -156,8 +156,14 @@ 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 used by sfc component
!(
__DEV__ &&
(instance.type.__hmrId ||
(instance.parent && instance.parent.type.__hmrId))
) &&
(optimized || patchFlag > 0) &&
!(patchFlag & PatchFlags.FULL_PROPS)
) {