@@ -26,13 +26,17 @@ const setVH = () => {
26
26
window .addEventListener (' resize' , setVH )
27
27
setVH ()
28
28
29
- const useDevMode = ref (true )
29
+ const useProdMode = ref (false )
30
30
const useSSRMode = ref (false )
31
31
32
32
let hash = location .hash .slice (1 )
33
33
if (hash .startsWith (' __DEV__' )) {
34
34
hash = hash .slice (7 )
35
- useDevMode .value = true
35
+ useProdMode .value = false
36
+ }
37
+ if (hash .startsWith (' __PROD__' )) {
38
+ hash = hash .slice (8 )
39
+ useProdMode .value = true
36
40
}
37
41
if (hash .startsWith (' __SSR__' )) {
38
42
hash = hash .slice (7 )
@@ -41,7 +45,7 @@ if (hash.startsWith('__SSR__')) {
41
45
42
46
const store = new ReplStore ({
43
47
serializedState: hash ,
44
- productionMode: ! useDevMode .value ,
48
+ productionMode: useProdMode .value ,
45
49
defaultVueRuntimeURL: import .meta .env .PROD
46
50
? ` ${location .origin }/vue.runtime.esm-browser.js `
47
51
: ` ${location .origin }/src/vue-dev-proxy ` ,
@@ -56,15 +60,15 @@ const store = new ReplStore({
56
60
// enable experimental features
57
61
const sfcOptions: SFCOptions = {
58
62
script: {
59
- inlineTemplate: ! useDevMode .value ,
60
- isProd: ! useDevMode .value ,
63
+ inlineTemplate: useProdMode .value ,
64
+ isProd: useProdMode .value ,
61
65
propsDestructure: true
62
66
},
63
67
style: {
64
- isProd: ! useDevMode .value
68
+ isProd: useProdMode .value
65
69
},
66
70
template: {
67
- isProd: ! useDevMode .value
71
+ isProd: useProdMode .value
68
72
}
69
73
}
70
74
@@ -73,18 +77,19 @@ watchEffect(() => {
73
77
const newHash = store
74
78
.serialize ()
75
79
.replace (/ ^ #/ , useSSRMode .value ? ` #__SSR__ ` : ` # ` )
76
- .replace (/ ^ #/ , useDevMode .value ? ` #__DEV__ ` : ` # ` )
80
+ .replace (/ ^ #/ , useProdMode .value ? ` #__PROD__ ` : ` # ` )
77
81
history .replaceState ({}, ' ' , newHash )
78
82
})
79
83
80
- function toggleDevMode () {
81
- const dev = (useDevMode .value = ! useDevMode .value )
84
+ function toggleProdMode () {
85
+ const isProd = (useProdMode .value = ! useProdMode .value )
82
86
sfcOptions .script ! .inlineTemplate =
83
87
sfcOptions .script ! .isProd =
84
88
sfcOptions .template ! .isProd =
85
89
sfcOptions .style ! .isProd =
86
- ! dev
90
+ isProd
87
91
store .toggleProduction ()
92
+ store .setFiles (store .getFiles ())
88
93
}
89
94
90
95
function toggleSSR() {
@@ -109,10 +114,10 @@ onMounted(() => {
109
114
<template >
110
115
<Header
111
116
:store =" store"
112
- :dev = " useDevMode "
117
+ :prod = " useProdMode "
113
118
:ssr =" useSSRMode"
114
119
@toggle-theme =" toggleTheme"
115
- @toggle-dev = " toggleDevMode "
120
+ @toggle-prod = " toggleProdMode "
116
121
@toggle-ssr =" toggleSSR"
117
122
@reload-page =" reloadPage"
118
123
/>
0 commit comments