このページとあなたの好きなAIアシスタントを使ってドキュメントを要約します
バージョン履歴
- "性別に基づくコンテンツの導入"v5.7.22025/7/27
このページのコンテンツはAIを使用して翻訳されました。
英語の元のコンテンツの最新バージョンを見るこのドキュメントを改善するアイデアがある場合は、GitHubでプルリクエストを送信することで自由に貢献してください。
ドキュメントへのGitHubリンクドキュメントのMarkdownをクリップボードにコピー
性別に基づくコンテンツ / Intlayerにおける性別
性別の仕組み
Intlayerでは、性別に基づくコンテンツはgender関数を通じて実現されます。この関数は特定の性別の値('male'、'female')を対応するコンテンツにマッピングします。この方法により、指定された性別に基づいて動的にコンテンツを選択することが可能です。React IntlayerやNext Intlayerと統合すると、実行時に提供された性別に応じて適切なコンテンツが自動的に選択されます。
性別に基づくコンテンツの設定
Intlayerプロジェクトで性別に基づくコンテンツを設定するには、性別特有の定義を含むコンテンツモジュールを作成します。以下に様々な形式の例を示します。
コードをクリップボードにコピー
import { gender, type Dictionary } from "intlayer";
const myGenderContent = {
key: "my_key",
content: {
myGender: gender({
male: "男性ユーザー向けのコンテンツ",
female: "女性ユーザー向けのコンテンツ",
fallback: "性別が指定されていない場合のコンテンツ", // オプション
}),
},
} satisfies Dictionary;
export default myGenderContent;
フォールバックが宣言されていない場合、性別が指定されていないか、定義された性別に一致しない場合は、最後に宣言されたキーがフォールバックとして使用されます。
React Intlayerでの性別ベースのコンテンツの使用
React コンポーネント内で性別に応じたコンテンツを使用するには、react-intlayer パッケージから useIntlayer フックをインポートして使用します。このフックは指定されたキーのコンテンツを取得し、適切な出力を選択するための条件を渡すことができます。
コードをクリップボードにコピー
import type { FC } from "react";
import { useIntlayer } from "react-intlayer";
const GenderComponent: FC = () => {
const { myGender } = useIntlayer("my_key");
return (
<div>
<p>
{
/* Output: my content for male users */
myGender("male")
}
</p>
<p>
{
/* Output: my content for female users */
myGender("female")
}
</p>
<p>
{
/* Output: my content for male users */
myGender("m")
}
</p>
<p>
{
/* Output: my content for female users */
myGender("f")
}
</p>
<p>
{
/* Output: my content when gender is not specified */
myGender("")
}
</p>
<p>
{
/* Output: my content when gender is not specified */
myGender(undefined)
}
</p>
</div>
);
};
export default GenderComponent;
Next.js のクライアントコンポーネントで性別に応じたコンテンツを使用するには、useIntlayer フック経由で取得します。以下は使用例です:
コードをクリップボードにコピー
"use client";
import type { FC } from "react";
import { useIntlayer } from "next-intlayer";
const GenderComponent: FC = () => {
const { myGender } = useIntlayer("my_key");
return (
<div>
<p>{myGender("male")}</p>
<p>{myGender("female")}</p>
</div>
);
};
export default GenderComponent;
Vue コンポーネントで性別に応じたコンテンツを使用するには、useIntlayer フック経由で取得します。以下は使用例です:
コードをクリップボードにコピー
Svelte コンポーネントで性別に応じたコンテンツを使用するには、useIntlayer フック経由で取得します。ストアは $ で参照します。以下は使用例です:
コードをクリップボードにコピー
Preact コンポーネントで性別に応じたコンテンツを使用するには、useIntlayer フック経由で取得します。以下は使用例です:
コードをクリップボードにコピー
import type { FC } from "preact";
import { useIntlayer } from "preact-intlayer";
const GenderComponent: FC = () => {
const { myGender } = useIntlayer("my_key");
return (
<div>
<p>{myGender("male")}</p>
<p>{myGender("female")}</p>
</div>
);
};
export default GenderComponent;
SolidJS コンポーネントで性別に応じたコンテンツを使用するには、useIntlayer フック経由で取得します。以下は使用例です:
コードをクリップボードにコピー
import type { Component } from "solid-js";
import { useIntlayer } from "solid-intlayer";
const GenderComponent: Component = () => {
const { myGender } = useIntlayer("my_key");
return (
<div>
<p>{myGender("male")}</p>
<p>{myGender("female")}</p>
</div>
);
};
export default GenderComponent;
Angular コンポーネントで性別に応じたコンテンツを使用するには、useIntlayer フック経由で取得します。以下は使用例です:
コードをクリップボードにコピー
vanilla-intlayer で性別に応じたコンテンツを使用するには、useIntlayer を経由して取得します。以下は使用例です:
コードをクリップボードにコピー
import { installIntlayer, useIntlayer } from "vanilla-intlayer";
installIntlayer();
const content = useIntlayer("my_key").onChange((newContent) => {
document.getElementById("gender-male")!.textContent =
newContent.myGender("male");
document.getElementById("gender-female")!.textContent =
newContent.myGender("female");
});
// Initial render
document.getElementById("gender-male")!.textContent = content.myGender("male");
document.getElementById("gender-female")!.textContent =
content.myGender("female");
追加リソース
設定や使用方法の詳細については、以下のリソースを参照してください:
これらのリソースは、さまざまな環境やフレームワークにおけるIntlayerのセットアップと使用方法について、さらに詳しい情報を提供します。
