Ask your question and get a summary of the document by referencing this page and the AI provider of your choice
Version History
- "Introduce gender-based content"v5.7.227/07/2025
The content of this page was translated using an AI.
See the last version of the original content in EnglishIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
Gender-Based Content / Gender in Intlayer
How Gender Works
To utilize gender-based content in Next.js Client Components, retrieve it via the useIntlayer hook. Here's an example:
Setting Up Gender-Based Content
To set up gender-based content in your Intlayer project, create a content module that includes your gender-specific definitions. Below are examples in various formats.
Copy the code to the clipboard
import { gender, type Dictionary } from "intlayer";
const myGenderContent = {
key: "my_key",
content: {
myGender: gender({
male: "my content for male users",
female: "my content for female users",
fallback: "my content when gender is not specified", // Optional
}),
},
} satisfies Dictionary;
export default myGenderContent;
If no fallback is declared, the last key declared will be taken as a fallback if the gender is not specified or does not match any defined gender.
Using Gender-Based Content with 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.
Copy the code to the clipboard
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:
Copy the code to the clipboard
"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:
Copy the code to the clipboard
To utilize gender-based content in Svelte components, retrieve it via the useIntlayer hook. The store is accessed with $. Here's an example:
Copy the code to the clipboard
To utilize gender-based content in Preact components, retrieve it via the useIntlayer hook. Here's an example:
Copy the code to the clipboard
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:
Copy the code to the clipboard
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:
Copy the code to the clipboard
To utilize gender-based content with vanilla-intlayer, retrieve it via the useIntlayer hook. Here's an example:
Copy the code to the clipboard
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");
Additional Resources
For more detailed information on configuration and usage, refer to the following resources:
These resources offer further insights into the setup and usage of Intlayer across various environments and frameworks.
