Skip to content

Commit fcaa4c2

Browse files
仮実装
1 parent 4c76781 commit fcaa4c2

File tree

8 files changed

+90
-19
lines changed

8 files changed

+90
-19
lines changed

next.config.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import type { NextConfig } from "next";
22

33
const nextConfig: NextConfig = {
44
reactStrictMode: true,
5-
output: "export",
5+
// output: "export",
66
images: { unoptimized: true },
77
trailingSlash: true,
88
};

package-lock.json

Lines changed: 71 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
"gray-matter": "^4.0.3",
1313
"highlight.js": "^11.11.1",
1414
"i18next": "^25.0.1",
15+
"i18next-browser-languagedetector": "^8.1.0",
16+
"i18next-http-backend": "^3.0.2",
1517
"install": "^0.13.0",
1618
"negotiator": "^1.0.0",
1719
"next": "15.3.1",

src/app/article/page.tsx

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import "@/app/i18n/i18n";
21
import useTranslation from "@/i18n/i18n";
32
import { getArticleIndexes, Article } from "./article";
43
import "./article.css"; // CSSファイルをインポート

src/app/layout/footer.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
"use client";
22
import { useState } from "react";
3-
import i18n from "@/i18n/i18n"; // i18nextをインポート
4-
3+
import i18n from "@/i18n/i18n";
54
export default function Footer() {
65
const [language, setLanguage] = useState(i18n.language || "en"); // 初期言語を設定
7-
86
const handleLanguageChange = (lang: string) => {
97
setLanguage(lang);
10-
i18n.changeLanguage(lang); // 言語を切り替え
8+
i18n.changeLanguage(lang === "ja" ? "en" : "ja").then(()=>{}); // 言語を切り替え
9+
// alert(i18n.language);
10+
// window.location.reload();
1111
console.log(`Language changed to: ${lang}`);
1212
};
1313

src/app/page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import "@/app/i18n/i18n";
1+
22
import useTranslation from "@/i18n/i18n";
33
export default function Home() {
44
const { t } = useTranslation;

src/i18n/en.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"info": {
3-
"lang": "ja"
3+
"lang": "en"
44
},
55
"pages": {
66
"home": {
@@ -12,16 +12,16 @@
1212
"msg4": "Also, on X (formerly Twitter), I share technical topics and daily life updates.",
1313
"msg5": "If you're interested in my activities, please check them out!",
1414
"msg6": "And, I would appreciate it if you could follow me on X (formerly Twitter) and GitHub!"
15+
}
16+
},
17+
"article": {
18+
"title": "Articles",
19+
"description": {
20+
"msg1": "Here, you can find various articles (or rather blogs) that I have written!",
21+
"msg2": "I write about many topics, so please take a look!"
1522
},
16-
"article": {
17-
"title": "Articles",
18-
"description": {
19-
"msg1": "Here, you can find various articles (or rather blogs) that I have written!",
20-
"msg2": "I write about many topics, so please take a look!"
21-
},
22-
"words": {
23-
"search": "Search"
24-
}
23+
"words": {
24+
"search": "Search"
2525
}
2626
}
2727
}

src/i18n/i18n.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@ const resources = {
1616
// i18nextの初期化
1717
i18n.init({
1818
resources, // リソースを設定
19-
lng: "ja", // デフォルト言語を日本語に設定
20-
fallbackLng: "en", // フォールバック言語を英語に設定
19+
fallbackLng: "ja", // フォールバック言語を英語に設定
2120
interpolation: {
2221
escapeValue: false, // ReactはXSS対策済み
2322
},

0 commit comments

Comments
 (0)