fix(stage-tamagotchi,stage-shared): added isUrlMode define check
This commit is contained in:
@@ -73,13 +73,19 @@ export default defineConfig({
|
||||
|
||||
plugins: [
|
||||
{
|
||||
name: 'proj-airi:define-runtime-environment',
|
||||
config() {
|
||||
return {
|
||||
define: {
|
||||
'import.meta.env.RUNTIME_ENVIRONMENT': '\'electron\'',
|
||||
},
|
||||
name: 'proj-airi:defines',
|
||||
config(ctx) {
|
||||
const define: Record<string, any> = {
|
||||
'import.meta.env.RUNTIME_ENVIRONMENT': '\'electron\'',
|
||||
}
|
||||
if (ctx.mode === 'development') {
|
||||
define['import.meta.env.URL_MODE'] = '\'server\''
|
||||
}
|
||||
if (ctx.mode === 'production') {
|
||||
define['import.meta.env.URL_MODE'] = '\'file\''
|
||||
}
|
||||
|
||||
return { define }
|
||||
},
|
||||
},
|
||||
|
||||
|
||||
@@ -5,3 +5,11 @@ export function isStageWeb(): boolean {
|
||||
export function isStageTamagotchi(): boolean {
|
||||
return import.meta.env.RUNTIME_ENVIRONMENT === 'electron'
|
||||
}
|
||||
|
||||
export function isUrlMode(mode: 'file' | 'server'): boolean {
|
||||
if (!import.meta.env.URL_MODE) {
|
||||
return mode === 'server'
|
||||
}
|
||||
|
||||
return import.meta.env.URL_MODE === mode
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { isStageTamagotchi, isStageWeb } from './environment'
|
||||
import { isUrlMode } from './environment'
|
||||
|
||||
export function isUrl(url: string) {
|
||||
try {
|
||||
@@ -12,16 +12,13 @@ export function isUrl(url: string) {
|
||||
}
|
||||
|
||||
export function withBase(url: string) {
|
||||
if (isStageWeb()) {
|
||||
if (isUrlMode('server')) {
|
||||
return url
|
||||
}
|
||||
if (isStageTamagotchi()) {
|
||||
return url.startsWith('/')
|
||||
? `.${url}`
|
||||
: url.startsWith('./')
|
||||
? url
|
||||
: `./${url}`
|
||||
}
|
||||
|
||||
throw new Error('Unknown environment')
|
||||
return url.startsWith('/')
|
||||
? `.${url}`
|
||||
: url.startsWith('./')
|
||||
? url
|
||||
: `./${url}`
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user