From 74c944613c1698e8f73b9f4aeb5018ba48bb555c Mon Sep 17 00:00:00 2001
From: baiwusanyu-c <740132583@qq.com>
Date: Fri, 8 Dec 2023 17:45:32 +0800
Subject: [PATCH 1/6] fix(teleport): ensure correct rendering when target is
empty
---
.../__tests__/components/Teleport.spec.ts | 14 ++++++++++++++
packages/runtime-core/src/components/Teleport.ts | 2 +-
2 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/packages/runtime-core/__tests__/components/Teleport.spec.ts b/packages/runtime-core/__tests__/components/Teleport.spec.ts
index c0dbd4cae9c..ba05991bd53 100644
--- a/packages/runtime-core/__tests__/components/Teleport.spec.ts
+++ b/packages/runtime-core/__tests__/components/Teleport.spec.ts
@@ -553,4 +553,18 @@ describe('renderer: teleport', () => {
`"
teleported
"`
)
})
+ // 8146
+ test(`ensure correct rendering when target is empty`, async () => {
+ const root = nodeOps.createElement('div')
+ const App = {
+ setup() {
+ return () => h(Teleport, { to: null }, h('div', 'teleported'))
+ }
+ }
+ render(h(App), root)
+ await nextTick()
+ expect(serializeInner(root)).toMatchInlineSnapshot(
+ `"teleported
"`
+ )
+ })
})
diff --git a/packages/runtime-core/src/components/Teleport.ts b/packages/runtime-core/src/components/Teleport.ts
index b9413598e54..4e1b392dc66 100644
--- a/packages/runtime-core/src/components/Teleport.ts
+++ b/packages/runtime-core/src/components/Teleport.ts
@@ -131,7 +131,7 @@ export const TeleportImpl = {
}
}
- if (disabled) {
+ if (disabled || !target) {
mount(container, mainAnchor)
} else if (target) {
mount(target, targetAnchor)
From da937b15e705f7d8d09c6434ee8dec552a5a9b84 Mon Sep 17 00:00:00 2001
From: baiwusanyu-c <740132583@qq.com>
Date: Fri, 8 Dec 2023 17:54:14 +0800
Subject: [PATCH 2/6] fix(teleport): updated unit test
---
packages/runtime-core/__tests__/components/Teleport.spec.ts | 3 +++
1 file changed, 3 insertions(+)
diff --git a/packages/runtime-core/__tests__/components/Teleport.spec.ts b/packages/runtime-core/__tests__/components/Teleport.spec.ts
index ba05991bd53..77d490b9715 100644
--- a/packages/runtime-core/__tests__/components/Teleport.spec.ts
+++ b/packages/runtime-core/__tests__/components/Teleport.spec.ts
@@ -18,6 +18,7 @@ import {
} from '@vue/runtime-test'
import { createVNode, Fragment } from '../../src/vnode'
import { compile, render as domRender } from 'vue'
+import {transform} from "@vue/reactivity-transform";
describe('renderer: teleport', () => {
test('should work', () => {
@@ -566,5 +567,7 @@ describe('renderer: teleport', () => {
expect(serializeInner(root)).toMatchInlineSnapshot(
`"teleported
"`
)
+ expect(`Invalid Teleport target: null`).toHaveBeenWarnedTimes(1)
+ expect(`Invalid Teleport target on mount`).toHaveBeenWarnedTimes(1)
})
})
From 32d82de2cc7b382c72235c52fdf181f3c9cd8436 Mon Sep 17 00:00:00 2001
From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com>
Date: Fri, 8 Dec 2023 14:24:40 +0000
Subject: [PATCH 3/6] [autofix.ci] apply automated fixes
---
packages/runtime-core/__tests__/components/Teleport.spec.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/packages/runtime-core/__tests__/components/Teleport.spec.ts b/packages/runtime-core/__tests__/components/Teleport.spec.ts
index 77d490b9715..6f9db9e3f5f 100644
--- a/packages/runtime-core/__tests__/components/Teleport.spec.ts
+++ b/packages/runtime-core/__tests__/components/Teleport.spec.ts
@@ -18,7 +18,7 @@ import {
} from '@vue/runtime-test'
import { createVNode, Fragment } from '../../src/vnode'
import { compile, render as domRender } from 'vue'
-import {transform} from "@vue/reactivity-transform";
+import { transform } from '@vue/reactivity-transform'
describe('renderer: teleport', () => {
test('should work', () => {
From fd76588e0ebb95b1aa5de0b5dee51cdf675c28a4 Mon Sep 17 00:00:00 2001
From: Evan You
Date: Mon, 11 Dec 2023 18:16:38 +0800
Subject: [PATCH 4/6] Update Teleport.spec.ts
---
packages/runtime-core/__tests__/components/Teleport.spec.ts | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/packages/runtime-core/__tests__/components/Teleport.spec.ts b/packages/runtime-core/__tests__/components/Teleport.spec.ts
index 6f9db9e3f5f..0198b26e770 100644
--- a/packages/runtime-core/__tests__/components/Teleport.spec.ts
+++ b/packages/runtime-core/__tests__/components/Teleport.spec.ts
@@ -18,7 +18,6 @@ import {
} from '@vue/runtime-test'
import { createVNode, Fragment } from '../../src/vnode'
import { compile, render as domRender } from 'vue'
-import { transform } from '@vue/reactivity-transform'
describe('renderer: teleport', () => {
test('should work', () => {
@@ -554,6 +553,7 @@ describe('renderer: teleport', () => {
`"teleported
"`
)
})
+
// 8146
test(`ensure correct rendering when target is empty`, async () => {
const root = nodeOps.createElement('div')
From 14ae4e0c682510d80ed4d981cfe54f01dd91122d Mon Sep 17 00:00:00 2001
From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com>
Date: Wed, 3 Jan 2024 01:48:53 +0000
Subject: [PATCH 5/6] [autofix.ci] apply automated fixes
---
packages/runtime-core/__tests__/components/Teleport.spec.ts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/packages/runtime-core/__tests__/components/Teleport.spec.ts b/packages/runtime-core/__tests__/components/Teleport.spec.ts
index 15e00848d26..e28b282d106 100644
--- a/packages/runtime-core/__tests__/components/Teleport.spec.ts
+++ b/packages/runtime-core/__tests__/components/Teleport.spec.ts
@@ -560,12 +560,12 @@ describe('renderer: teleport', () => {
const App = {
setup() {
return () => h(Teleport, { to: null }, h('div', 'teleported'))
- }
+ },
}
render(h(App), root)
await nextTick()
expect(serializeInner(root)).toMatchInlineSnapshot(
- `"teleported
"`
+ `"teleported
"`,
)
expect(`Invalid Teleport target: null`).toHaveBeenWarnedTimes(1)
expect(`Invalid Teleport target on mount`).toHaveBeenWarnedTimes(1)
From b3e285e8ceda4ea983e153cb729f20ddbe812999 Mon Sep 17 00:00:00 2001
From: "autofix-ci[bot]" <114827586+autofix-ci[bot]@users.noreply.github.com>
Date: Wed, 3 Jan 2024 08:57:37 +0000
Subject: [PATCH 6/6] [autofix.ci] apply automated fixes
---
packages/sfc-playground/src/App.vue | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/packages/sfc-playground/src/App.vue b/packages/sfc-playground/src/App.vue
index 200ac550d8f..cadd39f4baa 100644
--- a/packages/sfc-playground/src/App.vue
+++ b/packages/sfc-playground/src/App.vue
@@ -140,8 +140,8 @@ onMounted(() => {
:preview-options="{
customCode: {
importCode: `import { initCustomFormatter } from 'vue'`,
- useCode: `initCustomFormatter()`
- }
+ useCode: `initCustomFormatter()`,
+ },
}"
/>