feat(i18n): 공통/주요 화면 문자열 치환, 포맷 정책 적용, 언어 전환 UX 및 스캔 스크립트 추가
This commit is contained in:
@@ -31,6 +31,69 @@ const i18n = new VueI18n({
|
||||
locale: detectLocale(),
|
||||
fallbackLocale: 'en',
|
||||
messages: { ko, en, ja },
|
||||
// 숫자/통화 포맷 정책
|
||||
numberFormats: {
|
||||
en: {
|
||||
decimal: {
|
||||
style: 'decimal',
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 2
|
||||
},
|
||||
currency: {
|
||||
style: 'currency',
|
||||
currency: 'USD',
|
||||
currencyDisplay: 'symbol',
|
||||
minimumFractionDigits: 2,
|
||||
maximumFractionDigits: 2
|
||||
}
|
||||
},
|
||||
ko: {
|
||||
decimal: {
|
||||
style: 'decimal',
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 2
|
||||
},
|
||||
currency: {
|
||||
style: 'currency',
|
||||
currency: 'KRW',
|
||||
currencyDisplay: 'symbol',
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 0
|
||||
}
|
||||
},
|
||||
ja: {
|
||||
decimal: {
|
||||
style: 'decimal',
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 2
|
||||
},
|
||||
currency: {
|
||||
style: 'currency',
|
||||
currency: 'JPY',
|
||||
currencyDisplay: 'symbol',
|
||||
minimumFractionDigits: 0,
|
||||
maximumFractionDigits: 0
|
||||
}
|
||||
}
|
||||
},
|
||||
// 날짜/시간 포맷(예시)
|
||||
dateTimeFormats: {
|
||||
en: {
|
||||
short: {
|
||||
year: 'numeric', month: '2-digit', day: '2-digit'
|
||||
}
|
||||
},
|
||||
ko: {
|
||||
short: {
|
||||
year: 'numeric', month: '2-digit', day: '2-digit'
|
||||
}
|
||||
},
|
||||
ja: {
|
||||
short: {
|
||||
year: 'numeric', month: '2-digit', day: '2-digit'
|
||||
}
|
||||
}
|
||||
},
|
||||
silentTranslationWarn: process.env.NODE_ENV === 'production',
|
||||
missing(locale, key) {
|
||||
if (process.env.NODE_ENV !== 'production') {
|
||||
|
||||
Reference in New Issue
Block a user