feat(projects): new i18n function $t & login page and setting drawer config i18n

This commit is contained in:
Soybean
2023-07-23 20:19:47 +08:00
parent 458e387b68
commit 854d0bcf20
49 changed files with 1176 additions and 543 deletions

View File

@@ -1,6 +1,6 @@
import type { Router } from 'vue-router';
import { useTitle } from '@vueuse/core';
import { t } from '@/locales';
import { $t } from '@/locales';
import { createPermissionGuard } from './permission';
/**
@@ -16,7 +16,7 @@ export function createRouterGuard(router: Router) {
});
router.afterEach(to => {
// 设置document title
useTitle(to.meta.i18nTitle ? t(to.meta.i18nTitle) : to.meta.title);
useTitle(to.meta.i18nTitle ? $t(to.meta.i18nTitle) : to.meta.title);
// 结束 loadingBar
window.$loadingBar?.finish();
});

View File

@@ -1,10 +1,10 @@
const about1: AuthRoute.Route = {
const about: AuthRoute.Route = {
name: 'about',
path: '/about',
component: 'self',
meta: {
title: '关于',
i18nTitle: 'message.routes.about',
i18nTitle: 'routes.about',
requiresAuth: true,
keepAlive: true,
singleLayout: 'basic',
@@ -14,4 +14,4 @@ const about1: AuthRoute.Route = {
}
};
export default about1;
export default about;

View File

@@ -9,7 +9,7 @@ const authDemo: AuthRoute.Route = {
component: 'self',
meta: {
title: '权限切换',
i18nTitle: 'message.routes.auth-demo.permission',
i18nTitle: 'routes.auth-demo.permission',
requiresAuth: true,
icon: 'ic:round-construction'
}
@@ -20,7 +20,7 @@ const authDemo: AuthRoute.Route = {
component: 'self',
meta: {
title: '超级管理员可见',
i18nTitle: 'message.routes.auth-demo.super',
i18nTitle: 'routes.auth-demo.super',
requiresAuth: true,
permissions: ['super'],
icon: 'ic:round-supervisor-account'
@@ -29,7 +29,7 @@ const authDemo: AuthRoute.Route = {
],
meta: {
title: '权限示例',
i18nTitle: 'message.routes.auth-demo._value',
i18nTitle: 'routes.auth-demo._value',
icon: 'ic:baseline-security',
order: 5
}

View File

@@ -9,7 +9,7 @@ const component: AuthRoute.Route = {
component: 'self',
meta: {
title: '按钮',
i18nTitle: 'message.routes.component.button',
i18nTitle: 'routes.component.button',
requiresAuth: true,
icon: 'mdi:button-cursor'
}
@@ -20,7 +20,7 @@ const component: AuthRoute.Route = {
component: 'self',
meta: {
title: '卡片',
i18nTitle: 'message.routes.component.card',
i18nTitle: 'routes.component.card',
requiresAuth: true,
icon: 'mdi:card-outline'
}
@@ -31,7 +31,7 @@ const component: AuthRoute.Route = {
component: 'self',
meta: {
title: '表格',
i18nTitle: 'message.routes.component.table',
i18nTitle: 'routes.component.table',
requiresAuth: true,
icon: 'mdi:table-large'
}
@@ -39,7 +39,7 @@ const component: AuthRoute.Route = {
],
meta: {
title: '组件示例',
i18nTitle: 'message.routes.component._value',
i18nTitle: 'routes.component._value',
icon: 'cib:app-store',
order: 3
}

View File

@@ -11,7 +11,7 @@ const dashboard: AuthRoute.Route = {
title: '分析页',
requiresAuth: true,
icon: 'icon-park-outline:analysis',
i18nTitle: 'message.routes.dashboard.analysis'
i18nTitle: 'routes.dashboard.analysis'
}
},
{
@@ -22,7 +22,7 @@ const dashboard: AuthRoute.Route = {
title: '工作台',
requiresAuth: true,
icon: 'icon-park-outline:workbench',
i18nTitle: 'message.routes.dashboard.workbench'
i18nTitle: 'routes.dashboard.workbench'
}
}
],
@@ -30,7 +30,7 @@ const dashboard: AuthRoute.Route = {
title: '仪表盘',
icon: 'mdi:monitor-dashboard',
order: 1,
i18nTitle: 'message.routes.dashboard._value'
i18nTitle: 'routes.dashboard._value'
}
};

View File

@@ -9,7 +9,7 @@ const document: AuthRoute.Route = {
component: 'self',
meta: {
title: 'vue文档',
i18nTitle: 'message.routes.document.vue',
i18nTitle: 'routes.document.vue',
requiresAuth: true,
icon: 'logos:vue'
}
@@ -20,7 +20,7 @@ const document: AuthRoute.Route = {
component: 'self',
meta: {
title: 'vite文档',
i18nTitle: 'message.routes.document.vite',
i18nTitle: 'routes.document.vite',
requiresAuth: true,
icon: 'logos:vitejs'
}
@@ -31,7 +31,7 @@ const document: AuthRoute.Route = {
component: 'self',
meta: {
title: 'naive文档',
i18nTitle: 'message.routes.document.naive',
i18nTitle: 'routes.document.naive',
requiresAuth: true,
icon: 'logos:naiveui'
}
@@ -42,7 +42,7 @@ const document: AuthRoute.Route = {
component: 'self',
meta: {
title: '项目文档',
i18nTitle: 'message.routes.document.project',
i18nTitle: 'routes.document.project',
requiresAuth: true,
localIcon: 'logo'
}
@@ -52,7 +52,7 @@ const document: AuthRoute.Route = {
path: '/document/project-link',
meta: {
title: '项目文档(外链)',
i18nTitle: 'message.routes.document.project-link',
i18nTitle: 'routes.document.project-link',
requiresAuth: true,
localIcon: 'logo',
href: 'https://docs.soybean.pro/'
@@ -61,7 +61,7 @@ const document: AuthRoute.Route = {
],
meta: {
title: '文档',
i18nTitle: 'message.routes.document._value',
i18nTitle: 'routes.document._value',
icon: 'mdi:file-document-multiple-outline',
order: 2
}

View File

@@ -9,7 +9,7 @@ const exception: AuthRoute.Route = {
component: 'self',
meta: {
title: '异常页403',
i18nTitle: 'message.routes.exception.403',
i18nTitle: 'routes.exception.403',
requiresAuth: true,
icon: 'ic:baseline-block'
}
@@ -20,7 +20,7 @@ const exception: AuthRoute.Route = {
component: 'self',
meta: {
title: '异常页404',
i18nTitle: 'message.routes.exception.404',
i18nTitle: 'routes.exception.404',
requiresAuth: true,
icon: 'ic:baseline-web-asset-off'
}
@@ -31,14 +31,14 @@ const exception: AuthRoute.Route = {
component: 'self',
meta: {
title: '异常页500',
i18nTitle: 'message.routes.exception.500',
i18nTitle: 'routes.exception.500',
requiresAuth: true,
icon: 'ic:baseline-wifi-off'
}
}
],
meta: {
i18nTitle: 'message.routes.exception._value',
i18nTitle: 'routes.exception._value',
title: '异常页',
icon: 'ant-design:exception-outlined',
order: 7

View File

@@ -9,7 +9,7 @@ const functionRoute: AuthRoute.Route = {
component: 'self',
meta: {
title: 'Tab',
i18nTitle: 'message.routes.function.tab',
i18nTitle: 'routes.function.tab',
requiresAuth: true,
icon: 'ic:round-tab'
}
@@ -42,7 +42,7 @@ const functionRoute: AuthRoute.Route = {
],
meta: {
title: '功能',
i18nTitle: 'message.routes.function._value',
i18nTitle: 'routes.function._value',
icon: 'icon-park-outline:all-application',
order: 6
}

View File

@@ -9,7 +9,7 @@ const management: AuthRoute.Route = {
component: 'self',
meta: {
title: '权限管理',
i18nTitle: 'message.routes.management.auth',
i18nTitle: 'routes.management.auth',
requiresAuth: true,
icon: 'ic:baseline-security'
}
@@ -20,7 +20,7 @@ const management: AuthRoute.Route = {
component: 'self',
meta: {
title: '角色管理',
i18nTitle: 'message.routes.management.role',
i18nTitle: 'routes.management.role',
requiresAuth: true,
icon: 'carbon:user-role'
}
@@ -31,7 +31,7 @@ const management: AuthRoute.Route = {
component: 'self',
meta: {
title: '用户管理',
i18nTitle: 'message.routes.management.user',
i18nTitle: 'routes.management.user',
requiresAuth: true,
icon: 'ic:round-manage-accounts'
}
@@ -42,7 +42,7 @@ const management: AuthRoute.Route = {
component: 'self',
meta: {
title: '路由管理',
i18nTitle: 'message.routes.management.route',
i18nTitle: 'routes.management.route',
requiresAuth: true,
icon: 'material-symbols:route'
}
@@ -50,7 +50,7 @@ const management: AuthRoute.Route = {
],
meta: {
title: '系统管理',
i18nTitle: 'message.routes.management._value',
i18nTitle: 'routes.management._value',
icon: 'carbon:cloud-service-management',
order: 9
}

View File

@@ -14,7 +14,7 @@ const multiMenu: AuthRoute.Route = {
component: 'self',
meta: {
title: '二级菜单',
i18nTitle: 'message.routes.multi-menu.first.second',
i18nTitle: 'routes.multi-menu.first.second',
requiresAuth: true,
icon: 'mdi:menu'
}
@@ -30,7 +30,7 @@ const multiMenu: AuthRoute.Route = {
component: 'self',
meta: {
title: '三级菜单',
i18nTitle: 'message.routes.multi-menu.first.second-new.third',
i18nTitle: 'routes.multi-menu.first.second-new.third',
requiresAuth: true,
icon: 'mdi:menu'
}
@@ -38,21 +38,21 @@ const multiMenu: AuthRoute.Route = {
],
meta: {
title: '二级菜单(有子菜单)',
i18nTitle: 'message.routes.multi-menu.first.second-new._value',
i18nTitle: 'routes.multi-menu.first.second-new._value',
icon: 'mdi:menu'
}
}
],
meta: {
title: '一级菜单',
i18nTitle: 'message.routes.multi-menu.first._value',
i18nTitle: 'routes.multi-menu.first._value',
icon: 'mdi:menu'
}
}
],
meta: {
title: '多级菜单',
i18nTitle: 'message.routes.multi-menu._value',
i18nTitle: 'routes.multi-menu._value',
icon: 'carbon:menu',
order: 8
}

View File

@@ -14,7 +14,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: 'ECharts',
i18nTitle: 'message.routes.plugin.charts.echarts',
i18nTitle: 'routes.plugin.charts.echarts',
requiresAuth: true,
icon: 'simple-icons:apacheecharts'
}
@@ -25,7 +25,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: 'AntV',
i18nTitle: 'message.routes.plugin.charts.antv',
i18nTitle: 'routes.plugin.charts.antv',
requiresAuth: true,
icon: 'simple-icons:antdesign'
}
@@ -33,7 +33,7 @@ const plugin: AuthRoute.Route = {
],
meta: {
title: '图表',
i18nTitle: 'message.routes.plugin.charts._value',
i18nTitle: 'routes.plugin.charts._value',
icon: 'mdi:chart-areaspline'
}
},
@@ -43,7 +43,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: '地图',
i18nTitle: 'message.routes.plugin.map',
i18nTitle: 'routes.plugin.map',
requiresAuth: true,
icon: 'mdi:map'
}
@@ -54,7 +54,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: '视频',
i18nTitle: 'message.routes.plugin.video',
i18nTitle: 'routes.plugin.video',
requiresAuth: true,
icon: 'mdi:video'
}
@@ -70,7 +70,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: '富文本编辑器',
i18nTitle: 'message.routes.plugin.editor.quill',
i18nTitle: 'routes.plugin.editor.quill',
requiresAuth: true,
icon: 'mdi:file-document-edit-outline'
}
@@ -81,7 +81,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: 'markdown编辑器',
i18nTitle: 'message.routes.plugin.editor.markdown',
i18nTitle: 'routes.plugin.editor.markdown',
requiresAuth: true,
icon: 'ri:markdown-line'
}
@@ -89,7 +89,7 @@ const plugin: AuthRoute.Route = {
],
meta: {
title: '编辑器',
i18nTitle: 'message.routes.plugin.editor._value',
i18nTitle: 'routes.plugin.editor._value',
icon: 'icon-park-outline:editor'
}
},
@@ -99,7 +99,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: 'Swiper插件',
i18nTitle: 'message.routes.plugin.swiper',
i18nTitle: 'routes.plugin.swiper',
requiresAuth: true,
icon: 'simple-icons:swiper'
}
@@ -110,7 +110,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: '剪贴板',
i18nTitle: 'message.routes.plugin.copy',
i18nTitle: 'routes.plugin.copy',
requiresAuth: true,
icon: 'mdi:clipboard-outline'
}
@@ -121,7 +121,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: '图标',
i18nTitle: 'message.routes.plugin.icon',
i18nTitle: 'routes.plugin.icon',
requiresAuth: true,
localIcon: 'custom-icon'
}
@@ -132,7 +132,7 @@ const plugin: AuthRoute.Route = {
component: 'self',
meta: {
title: '打印',
i18nTitle: 'message.routes.plugin.print',
i18nTitle: 'routes.plugin.print',
requiresAuth: true,
icon: 'mdi:printer'
}
@@ -140,7 +140,7 @@ const plugin: AuthRoute.Route = {
],
meta: {
title: '插件示例',
i18nTitle: 'message.routes.plugin._value',
i18nTitle: 'routes.plugin._value',
icon: 'clarity:plugin-line',
order: 4
}