Skip to content

Commit 5574fbf

Browse files
committed
wip: refactor
1 parent 177c6a6 commit 5574fbf

File tree

2 files changed

+5
-22
lines changed

2 files changed

+5
-22
lines changed

packages/runtime-core/src/index.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -561,8 +561,7 @@ export { initFeatureFlags } from './featureFlags'
561561
* @internal
562562
*/
563563
export {
564-
resolveTarget,
564+
resolveTarget as resolveTeleportTarget,
565565
isTeleportDisabled,
566566
isTeleportDeferred,
567-
TeleportEndKey,
568567
} from './components/Teleport'

packages/runtime-vapor/src/components/Teleport.ts

Lines changed: 4 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import {
2-
TeleportEndKey,
32
type TeleportProps,
43
currentInstance,
54
isTeleportDeferred,
65
isTeleportDisabled,
76
queuePostFlushCb,
8-
resolveTarget,
7+
resolveTeleportTarget,
98
warn,
109
} from '@vue/runtime-dom'
1110
import { type Block, type BlockFn, insert, remove } from '../block'
@@ -135,15 +134,16 @@ export class TeleportFragment extends VaporFragment {
135134
}
136135

137136
const mountToTarget = () => {
138-
const target = (this.target = resolveTarget(props, querySelector))
137+
const target = (this.target = resolveTeleportTarget(props, querySelector))
139138
if (target) {
140139
if (
141140
// initial mount into target
142141
!this.targetAnchor ||
143142
// target changed
144143
this.targetAnchor.parentNode !== target
145144
) {
146-
;[this.targetAnchor, this.targetStart] = prepareAnchor(target)
145+
insert((this.targetStart = createTextNode('')), target)
146+
insert((this.targetAnchor = createTextNode('')), target)
147147
}
148148

149149
mount(target, this.targetAnchor!)
@@ -218,22 +218,6 @@ export class TeleportFragment extends VaporFragment {
218218
}
219219
}
220220

221-
function prepareAnchor(target: ParentNode | null) {
222-
const targetStart = createTextNode('') as Text & { [TeleportEndKey]: Node }
223-
const targetAnchor = createTextNode('')
224-
225-
// attach a special property, so we can skip teleported content in
226-
// renderer's nextSibling search
227-
targetStart[TeleportEndKey] = targetAnchor
228-
229-
if (target) {
230-
insert(targetStart, target)
231-
insert(targetAnchor, target)
232-
}
233-
234-
return [targetAnchor, targetStart]
235-
}
236-
237221
export const VaporTeleport = VaporTeleportImpl as unknown as {
238222
__vapor: true
239223
__isTeleport: true

0 commit comments

Comments
 (0)