Skip to content

Commit c24156e

Browse files
committed
fix: improve vapor mode support in preview and file compilation
1 parent b85ec7d commit c24156e

File tree

3 files changed

+6
-2
lines changed

3 files changed

+6
-2
lines changed

src/output/Sandbox.vue

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,8 @@ async function updatePreview() {
218218
)
219219
220220
try {
221-
const { mainFile } = store.value
221+
const { mainFile, files } = store.value
222+
const isVapor = files[mainFile].compiled.vapor || false
222223
223224
// if SSR, generate the SSR bundle and eval it to render the HTML
224225
if (isSSR && mainFile.endsWith('.vue')) {
@@ -235,7 +236,8 @@ async function updatePreview() {
235236
const AppComponent = __modules__["${mainFile}"].default
236237
AppComponent.name = 'Repl'
237238
const vaporSupported = ${vaporSupported}
238-
const app = (vaporSupported && AppComponent.__vapor ? _createVaporApp : _createApp)(AppComponent)
239+
const isVapor = ${isVapor}
240+
const app = (vaporSupported && isVapor ? _createVaporApp : _createApp)(AppComponent)
239241
if (!app.config.hasOwnProperty('unwrapInjectedRef')) {
240242
app.config.unwrapInjectedRef = true
241243
}

src/store.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -502,6 +502,7 @@ export class File {
502502
ssr: '',
503503
clientMap: '',
504504
ssrMap: '',
505+
vapor: false
505506
}
506507
editorViewState: editor.ICodeEditorViewState | null = null
507508

src/transform.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -284,6 +284,7 @@ export async function compileFile(
284284
ssrTemplateMap,
285285
),
286286
)
287+
compiled.vapor = !!(descriptor.scriptSetup && descriptor.scriptSetup.attrs.vapor)
287288
}
288289

289290
return []

0 commit comments

Comments
 (0)