このページとあなたの好きな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での性別ベースのコンテンツの使用
To utilize gender-based content within a React component, import and use the useIntlayer hook from the react-intlayer package. This hook fetches the content for the specified key and allows you to pass in a gender to select the appropriate output.
コードをクリップボードにコピー
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;
To utilize gender-based content in Next.js Client Components, retrieve it via the useIntlayer hook. Here's an example:
コードをクリップボードにコピー
"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;
To utilize gender-based content in Vue components, retrieve it via the useIntlayer hook. Here's an example:
コードをクリップボードにコピー
To utilize gender-based content in Svelte components, retrieve it via the useIntlayer hook. The store is accessed with $. Here's an example:
コードをクリップボードにコピー
To utilize gender-based content in Preact components, retrieve it via the useIntlayer hook. Here's an example:
コードをクリップボードにコピー
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;
To utilize gender-based content in SolidJS components, retrieve it via the useIntlayer hook. Here's an example:
コードをクリップボードにコピー
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;
To utilize gender-based content in Angular components, retrieve it via the useIntlayer hook. Here's an example:
コードをクリップボードにコピー
To utilize gender-based content with vanilla-intlayer, retrieve it via the useIntlayer hook. Here's an example:
コードをクリップボードにコピー
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のセットアップと使用方法について、さらに詳しい情報を提供します。
