Zadaj pytanie i otrzymaj streszczenie dokumentu, odwołując się do tej strony i wybranego dostawcy AI
Dzięki integracji serwera Intlayer MCP z ulubionym asystentem AI możesz uzyskać dostęp do całej dokumentacji bezpośrednio z ChatGPT, DeepSeek, Cursor, VSCode itp.
Zobacz dokumentację serwera MCPHistoria wersji
- Init historyv5.5.1029.06.2025
Treść tej strony została przetłumaczona przy użyciu sztucznej inteligencji.
Zobacz ostatnią wersję oryginalnej treści w języku angielskimJeśli masz pomysł na ulepszenie tej dokumentacji, zachęcamy do przesłania pull requesta na GitHubie.
Link do dokumentacji na GitHubieKopiuj dokument Markdown do schowka
React Integration: useDictionary Hook Documentation
This section provides detailed guidance on using the useDictionary hook within React applications, enabling efficient handling of localized content without a visual editor.
Importing useDictionary in React
The useDictionary hook can be integrated into React applications by importing it based on the context:
Client Component:
import { useDictionary } from "react-intlayer"; // Used in client-side React componentsServer Component:
import { useDictionary } from "react-intlayer/server"; // Used in server-side React components
Parameters
The hook accepts two parameters:
- dictionary: A declared dictionary object containing localized content for specific keys.
- locale (optional): The desired locale. Defaults to the current context's locale if not specified.
Dictionary
All dictionary objects should be declared in structured content files to ensure type safety and prevent runtime errors. You can find the setup instructions here. Here's an example of content declaration:
Skopiuj kod do schowka
import { t, type Dictionary } from "intlayer";const componentContent = { key: "component-example", content: { title: t({ en: "Client Component Example", fr: "Exemple de composant client", es: "Ejemplo de componente cliente", }), content: t({ en: "This is the content of a client component example", fr: "Ceci est le contenu d'un exemple de composant client", es: "Este es el contenido de un ejemplo de componente cliente", }), },} satisfies Dictionary;export default componentContent;Example Usage in React
Below is an example of how to use the useDictionary hook in a React component:
Skopiuj kod do schowka
import type { FC } from "react";import { useDictionary } from "react-intlayer";import componentContent from "./component.content";const ComponentExample: FC = () => { const { title, content } = useDictionary(componentContent); return ( <div> <h1>{title}</h1> <p>{content}</p> </div> );};Server Integration
If you're using the useDictionary hook outside the IntlayerProvider, the locale must be explicitly provided as a parameter when rendering the component:
Skopiuj kod do schowka
import type { FC } from "react";import { useDictionary } from "react-intlayer/server";import clientComponentExampleContent from "./component.content";const ServerComponentExample: FC<{ locale: string }> = ({ locale }) => { const { content } = useDictionary(clientComponentExampleContent, locale); return ( <div> <h1>{content.title}</h1> <p>{content.content}</p> </div> );};Notes on Attributes
Unlike integrations using visual editors, attributes like buttonTitle.value do not apply here. Instead, directly access the localized strings as declared in your content.
<button title={content.title}>{content.content}</button>Additional Tips
- Type Safety: Always use Dictionary to define your dictionaries to ensure type safety.
- Localization Updates: When updating content, ensure all locales are consistent to avoid missing translations.
This documentation focuses on the integration of the useDictionary hook, providing a streamlined approach to managing localized content without relying on visual editor functionalities.