feat: PDF 转换前端(epub 上传/进度轮询/下载/用户软删,复用 zTools2 API)
便携式 Vue3 前端:上传 epub 转 PDF,显示上传与转换进度,完成后下载; 用户可软删任务(不再对自己展示,管理员仍可见)。凭 cookie 标识用户。 复用 zTools2 后端 /api/pdf/*(同源),独立 i18n(中英懒加载), 可独立运行或经 mainPage iframe 同源集成。含 vitest 单测 20 项。
This commit is contained in:
14
src/composables/useLocale.js
Normal file
14
src/composables/useLocale.js
Normal file
@@ -0,0 +1,14 @@
|
||||
import { computed } from 'vue'
|
||||
import i18n from '../i18n/index.js'
|
||||
|
||||
// ★ 子项目自有的语言辅助 composable。
|
||||
// 关键:直接读模块级 i18n 实例的 global composer,而非 useI18n() 注入。
|
||||
// 原因:useI18n({ useScope: 'global' }) 解析的是「当前运行 app 已安装的全局 i18n」,
|
||||
// 嵌入 mainPage 时那是父项目的实例(不含本子项目文案)-> 文案回退成 key。
|
||||
// 改为直接引用本子项目实例的 .global,无论是否 app.use() 都拿到本子项目的 t。
|
||||
export function useLocale() {
|
||||
const { t, locale } = i18n.global
|
||||
const isZh = computed(() => locale.value === 'zh-CN')
|
||||
const pick = (obj) => (isZh.value ? obj.zh : obj.en)
|
||||
return { t, locale, isZh, pick }
|
||||
}
|
||||
Reference in New Issue
Block a user