From ed4040f2ec478b3a489ef76c8d1e6290c4cd5d4c Mon Sep 17 00:00:00 2001 From: MaysWind Date: Sun, 16 Jul 2023 22:55:02 +0800 Subject: [PATCH] code refactor --- src/lib/i18n.js | 11 ++++++++--- src/views/mobile/ExchangeRatesPage.vue | 5 ++++- src/views/mobile/SignupPage.vue | 5 ++++- src/views/mobile/accounts/EditPage.vue | 7 +++++-- src/views/mobile/users/UserProfilePage.vue | 5 ++++- 5 files changed, 25 insertions(+), 8 deletions(-) diff --git a/src/lib/i18n.js b/src/lib/i18n.js index b8553499..0c1f7225 100644 --- a/src/lib/i18n.js +++ b/src/lib/i18n.js @@ -277,6 +277,10 @@ function getDefaultFirstDayOfWeek(translateFn) { return translateFn('default.firstDayOfWeek'); } +function getCurrencyName(currencyCode, translateFn) { + return translateFn(`currency.${currencyCode}`); +} + function getAllLongMonthNames(translateFn) { return [ translateFn('datetime.January.long'), @@ -516,7 +520,7 @@ function getAllCurrencies(translateFn) { allCurrencies.push({ code: currencyCode, - displayName: translateFn(`currency.${currencyCode}`) + displayName: getCurrencyName(currencyCode, translateFn) }); } @@ -639,7 +643,7 @@ function getAllDisplayExchangeRates(exchangeRatesData, translateFn) { availableExchangeRates.push({ currencyCode: exchangeRate.currency, - currencyDisplayName: translateFn(`currency.${exchangeRate.currency}`), + currencyDisplayName: getCurrencyName(exchangeRate.currency, translateFn), rate: exchangeRate.rate }); } @@ -707,7 +711,7 @@ function getDisplayCurrency(value, currencyCode, options, translateFn) { } else if (currencyCode && currencyDisplayMode === currency.allCurrencyDisplayModes.Code) { return `${value} ${currencyCode}`; } else if (currencyCode && currencyDisplayMode === currency.allCurrencyDisplayModes.Name) { - const currencyName = translateFn(`currency.${currencyCode}`); + const currencyName = getCurrencyName(currencyCode, translateFn); return `${value} ${currencyName}`; } else { return value; @@ -898,6 +902,7 @@ export function i18nFunctions(i18nGlobal) { getCurrentLanguageInfo: () => getCurrentLanguageInfo(i18nGlobal), getDefaultCurrency: () => getDefaultCurrency(i18nGlobal.t), getDefaultFirstDayOfWeek: () => getDefaultFirstDayOfWeek(i18nGlobal.t), + getCurrencyName: (currencyCode) => getCurrencyName(currencyCode, i18nGlobal.t), getAllLongMonthNames: () => getAllLongMonthNames(i18nGlobal.t), getAllShortMonthNames: () => getAllShortMonthNames(i18nGlobal.t), getAllLongWeekdayNames: () => getAllLongWeekdayNames(i18nGlobal.t), diff --git a/src/views/mobile/ExchangeRatesPage.vue b/src/views/mobile/ExchangeRatesPage.vue index 529447d2..414e37c4 100644 --- a/src/views/mobile/ExchangeRatesPage.vue +++ b/src/views/mobile/ExchangeRatesPage.vue @@ -16,7 +16,7 @@ > @@ -207,6 +207,9 @@ export default { } }); }, + getCurrencyName(currencyCode) { + return this.$locale.getCurrencyName(currencyCode); + }, getConvertedAmount(toExchangeRate) { const fromExchangeRate = this.exchangeRatesStore.latestExchangeRateMap[this.baseCurrency]; return getConvertedAmount(this.baseAmount / 100, fromExchangeRate, toExchangeRate); diff --git a/src/views/mobile/SignupPage.vue b/src/views/mobile/SignupPage.vue index 5f8335cd..892406c5 100644 --- a/src/views/mobile/SignupPage.vue +++ b/src/views/mobile/SignupPage.vue @@ -80,7 +80,7 @@ > @@ -399,6 +399,9 @@ export default { } }); }, + getCurrencyName(currencyCode) { + return this.$locale.getCurrencyName(currencyCode); + }, getCategoryTypeName(categoryType) { switch (categoryType) { case categoryConstants.allCategoryTypes.Income.toString(): diff --git a/src/views/mobile/accounts/EditPage.vue b/src/views/mobile/accounts/EditPage.vue index 7a632483..7865161b 100644 --- a/src/views/mobile/accounts/EditPage.vue +++ b/src/views/mobile/accounts/EditPage.vue @@ -164,7 +164,7 @@ > @@ -357,7 +357,7 @@ > @@ -712,6 +712,9 @@ export default { } }); }, + getCurrencyName(currencyCode) { + return this.$locale.getCurrencyName(currencyCode); + }, getAccountTypeName(accountType) { const typeName = getNameByKeyValue(this.allAccountTypesArray, accountType, 'id', 'name'); return this.$t(typeName); diff --git a/src/views/mobile/users/UserProfilePage.vue b/src/views/mobile/users/UserProfilePage.vue index fd0453c4..4a78df55 100644 --- a/src/views/mobile/users/UserProfilePage.vue +++ b/src/views/mobile/users/UserProfilePage.vue @@ -129,7 +129,7 @@ > @@ -456,6 +456,9 @@ export default { getNameByKeyValue(src, value, keyField, nameField, defaultName) { return getNameByKeyValue(src, value, keyField, nameField, defaultName); }, + getCurrencyName(currencyCode) { + return this.$locale.getCurrencyName(currencyCode); + }, setCurrentUserProfile(profile) { this.oldProfile.email = profile.email; this.oldProfile.nickname = profile.nickname;