WIP i18next

This commit is contained in:
Cindy Chang
2024-06-03 12:41:30 +08:00
parent 9a5dd2d786
commit dfd3199d4c
4 changed files with 41 additions and 1 deletions

View File

@@ -26,6 +26,8 @@
"cytoscape-popper": "^2.0.0",
"date-fns": "^2.30.0",
"decimal.js": "^10.4.3",
"i18next": "^23.11.5",
"i18next-browser-languagedetector": "^8.0.0",
"javascript-color-gradient": "^2.4.4",
"mitt": "^3.0.0",
"moment": "^2.29.4",

5
src/i18n/en.json Normal file
View File

@@ -0,0 +1,5 @@
{
"Compare": {
"avgCycleTimeTitle": "Average Cycle Time"
}
}

31
src/i18n/i18n.js Normal file
View File

@@ -0,0 +1,31 @@
import i18next from 'i18next';
import LanguageDetector from 'i18next-browser-languagedetector';
import enLocale from './en.json';
i18next
.use(LanguageDetector)
.init({
// 配置你的本地化選項
resources: {
en: enLocale,
de: {
translation: {
greeting: 'Hallo!'
}
}
// 添加其他語言的翻譯
},
// 選擇默認的語言
fallbackLng: 'en',
// 在初始化時自動檢測用戶的語言
detection: {
order: ['localStorage', 'navigator'],
caches: ['localStorage']
},
// 選擇性配置其他選項...
});
export default i18next;

View File

@@ -102,7 +102,9 @@ export function followTimeLabel(second, max, fixedNumber = 0) {
*/
export function dateLabel(date, maxDate, minDate) {
// 將時間字串轉換為時間物件
// new Date(time) 之後不用 getTime()因為在JavaScript中日期物件是以時間戳記timestamp的形式存儲的。當創建一個新的日期物件時它內部會自動轉換時間字串為時間戳記。
// new Date(time) 之後不用 getTime()因為在JavaScript中
// 日期物件是以時間戳記timestamp的形式存儲的。當創建一個新的日期物件時
// 它內部會自動轉換時間字串為時間戳記。
date = new Date(date);
maxDate = new Date(maxDate);
minDate = new Date(minDate);