feat: 添加 IonText 组件支持,更新依赖版本,优化默认布局和应用配置

This commit is contained in:
2025-12-23 03:56:29 +07:00
parent 0db669d08e
commit a87f11c1f4
5 changed files with 43 additions and 36 deletions

2
components.d.ts vendored
View File

@@ -50,6 +50,7 @@ declare module 'vue' {
IonTabBar: typeof import('@ionic/vue')['IonTabBar']
IonTabButton: typeof import('@ionic/vue')['IonTabButton']
IonTabs: typeof import('@ionic/vue')['IonTabs']
IonText: typeof import('@ionic/vue')['IonText']
IonTitle: typeof import('@ionic/vue')['IonTitle']
IonToolbar: typeof import('@ionic/vue')['IonToolbar']
LayoutDefault: typeof import('./src/components/layout/default.vue')['default']
@@ -100,6 +101,7 @@ declare global {
const IonTabBar: typeof import('@ionic/vue')['IonTabBar']
const IonTabButton: typeof import('@ionic/vue')['IonTabButton']
const IonTabs: typeof import('@ionic/vue')['IonTabs']
const IonText: typeof import('@ionic/vue')['IonText']
const IonTitle: typeof import('@ionic/vue')['IonTitle']
const IonToolbar: typeof import('@ionic/vue')['IonToolbar']
const LayoutDefault: typeof import('./src/components/layout/default.vue')['default']

View File

@@ -32,7 +32,7 @@
"@elysiajs/eden": "^1.4.5",
"@ionic/vue": "^8.7.11",
"@ionic/vue-router": "^8.7.11",
"@riwa/api-types": "http://192.168.1.27:9527/api/riwa-api-types-0.0.53.tgz",
"@riwa/api-types": "http://192.168.1.27:9527/api/riwa-api-types-0.0.59.tgz",
"@tailwindcss/vite": "^4.1.18",
"@vee-validate/yup": "^4.15.1",
"@vueuse/core": "^14.1.0",

12
pnpm-lock.yaml generated
View File

@@ -54,8 +54,8 @@ importers:
specifier: ^8.7.11
version: 8.7.11(@stencil/core@4.39.0)(vue-router@4.6.3(vue@3.5.25(typescript@5.9.3)))(vue@3.5.25(typescript@5.9.3))
'@riwa/api-types':
specifier: http://192.168.1.27:9527/api/riwa-api-types-0.0.53.tgz
version: http://192.168.1.27:9527/api/riwa-api-types-0.0.53.tgz(@elysiajs/eden@1.4.5(elysia@1.4.18(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3)))
specifier: http://192.168.1.27:9527/api/riwa-api-types-0.0.59.tgz
version: http://192.168.1.27:9527/api/riwa-api-types-0.0.59.tgz(@elysiajs/eden@1.4.5(elysia@1.4.18(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3)))
'@tailwindcss/vite':
specifier: ^4.1.18
version: 4.1.18(vite@7.2.7(@types/node@24.10.2)(jiti@2.6.1)(lightningcss@1.30.2)(terser@5.44.1)(yaml@2.8.2))
@@ -1354,9 +1354,9 @@ packages:
resolution: {integrity: sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==}
engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0}
'@riwa/api-types@http://192.168.1.27:9527/api/riwa-api-types-0.0.53.tgz':
resolution: {tarball: http://192.168.1.27:9527/api/riwa-api-types-0.0.53.tgz}
version: 0.0.53
'@riwa/api-types@http://192.168.1.27:9527/api/riwa-api-types-0.0.59.tgz':
resolution: {tarball: http://192.168.1.27:9527/api/riwa-api-types-0.0.59.tgz}
version: 0.0.59
peerDependencies:
'@elysiajs/eden': ^1.4.5
@@ -6453,7 +6453,7 @@ snapshots:
'@pkgr/core@0.2.9': {}
'@riwa/api-types@http://192.168.1.27:9527/api/riwa-api-types-0.0.53.tgz(@elysiajs/eden@1.4.5(elysia@1.4.18(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3)))':
'@riwa/api-types@http://192.168.1.27:9527/api/riwa-api-types-0.0.59.tgz(@elysiajs/eden@1.4.5(elysia@1.4.18(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3)))':
dependencies:
'@elysiajs/eden': 1.4.5(elysia@1.4.18(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3))

View File

@@ -5,41 +5,41 @@ const { t } = useI18n();
</script>
<template>
<IonPage>
<IonTabs>
<IonRouterOutlet />
<IonTabBar slot="bottom" class="tabbar">
<IonTabButton tab="riwa" href="/layout/riwa">
<IonIcon aria-hidden="true" :icon="compass" />
<IonLabel>{{ t('tabs.riwa') }}</IonLabel>
</IonTabButton>
<ion-page>
<ion-tabs>
<ion-router-outlet />
<ion-tab-bar slot="bottom">
<ion-tab-button tab="riwa" href="/layout/riwa">
<ion-icon aria-hidden="true" :icon="compass" />
<ion-label>{{ t('tabs.riwa') }}</ion-label>
</ion-tab-button>
<IonTabButton tab="market" href="/layout/market">
<IonIcon aria-hidden="true" :icon="cellular" />
<IonLabel>{{ t('tabs.market') }}</IonLabel>
</IonTabButton>
<ion-tab-button tab="market" href="/layout/market">
<ion-icon aria-hidden="true" :icon="cellular" />
<ion-label>{{ t('tabs.market') }}</ion-label>
</ion-tab-button>
<IonTabButton tab="trade" href="/layout/trade">
<IonIcon aria-hidden="true" :icon="swapHorizontal" />
<IonLabel>{{ t('tabs.trade') }}</IonLabel>
</IonTabButton>
<ion-tab-button tab="trade" href="/layout/trade">
<ion-icon aria-hidden="true" :icon="swapHorizontal" />
<ion-label>{{ t('tabs.trade') }}</ion-label>
</ion-tab-button>
<IonTabButton tab="chat" href="/layout/chat">
<IonIcon aria-hidden="true" :icon="chatboxEllipses" />
<IonLabel>{{ t('tabs.chat') }}</IonLabel>
</IonTabButton>
<ion-tab-button tab="chat" href="/layout/chat">
<ion-icon aria-hidden="true" :icon="chatboxEllipses" />
<ion-label>{{ t('tabs.chat') }}</ion-label>
</ion-tab-button>
<IonTabButton tab="user" href="/layout/user">
<IonIcon aria-hidden="true" :icon="personCircle" />
<IonLabel>{{ t('tabs.user') }}</IonLabel>
</IonTabButton>
</IonTabBar>
</IonTabs>
</IonPage>
<ion-tab-button tab="user" href="/layout/user">
<ion-icon aria-hidden="true" :icon="personCircle" />
<ion-label>{{ t('tabs.user') }}</ion-label>
</ion-tab-button>
</ion-tab-bar>
</ion-tabs>
</ion-page>
</template>
<style scoped>
.tabbar {
ion-tab-bar {
height: 60px;
--background: var(--ion-background-color);
}

View File

@@ -47,7 +47,12 @@ authClient.getSession().then((session) => {
userStore.setToken(session.data?.session.token || "");
const app = createApp(App)
.use(IonicVue)
.use(IonicVue, {
backButtonText: "返回",
mode: "ios",
statusTap: true,
swipeBackEnabled: true,
})
.use(uiComponents)
.use(pinia)
.use(router)