From 857d37186d14e0cc2b269045886195f3b6ee77a5 Mon Sep 17 00:00:00 2001 From: jiangx Date: Mon, 7 Mar 2022 15:05:53 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E8=AF=AD=E8=A8=80=E5=88=87?= =?UTF-8?q?=E6=8D=A2=E6=8C=87=E4=BB=A4=E4=BB=A3=E7=A0=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/directives/language.ts | 22 +++++++++++----------- src/store/state.ts | 2 +- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/directives/language.ts b/src/directives/language.ts index 9f1b0c1..7bc9714 100644 --- a/src/directives/language.ts +++ b/src/directives/language.ts @@ -1,11 +1,12 @@ -import { watchEffect } from 'vue' +import { watchEffect, DirectiveBinding } from 'vue' import { useStore } from '@/store' import { chineseLanguageLoader } from '@/i18n/util' /* - ep:v-language:[state.obj]="'title'" + ep:v-language:title="state.obj" */ -export default (el: HTMLElement, binding: any) => { + +export default (el: HTMLElement, binding: DirectiveBinding) => { watchEffect(() => { const store = useStore() const language = store.language @@ -13,23 +14,22 @@ export default (el: HTMLElement, binding: any) => { let content = '' - if (!Object.keys(arg)?.length) { + if (!Object.keys(value)?.length || !arg) { return } if (language === 'zh') { - console.log('zh') - content = arg[value] + content = value[arg] } - if (language === 'en' && arg[value + 'En']) { - content = arg[value + 'En'] - } else if (language === 'en' && !arg[value + 'En']) { - content = arg[value] + if (language === 'en' && value[arg + 'En']) { + content = value[arg + 'En'] + } else if (language === 'en' && !value[arg + 'En']) { + content = value[arg] } if (language === 'tw') { - content = chineseLanguageLoader(arg[value]) + content = chineseLanguageLoader(value[arg]) } el.innerHTML = content }) diff --git a/src/store/state.ts b/src/store/state.ts index e289c04..d030a4f 100644 --- a/src/store/state.ts +++ b/src/store/state.ts @@ -15,7 +15,7 @@ export interface State { export const state = (): State => ({ shopList: [], selectedModule: '', - language: 'zh', + language: 'tw', config: {}, shop: {}, currentFloor: {},