Haz tu pregunta y obtén un resumen del documento referenciando esta página y el proveedor AI de tu elección
Al integrar el servidor MCP Intlayer a tu asistente de IA, puedes recuperar todos los documentos directamente desde ChatGPT, DeepSeek, Cursor, VSCode, etc.
Ver la documentación del servidor MCPEl contenido de esta página ha sido traducido con una IA.
Ver la última versión del contenido original en inglésSi tienes una idea para mejorar esta documentación, no dudes en contribuir enviando una pull request en GitHub.
Enlace de GitHub a la documentaciónCopiar el Markdown del documento a la portapapeles
Integración con React: Documentación del Hook useDictionary
Esta sección proporciona una guía detallada sobre cómo usar el hook useDictionary dentro de aplicaciones React, permitiendo un manejo eficiente de contenido localizado sin un editor visual.
Importando useDictionary en React
El hook useDictionary puede integrarse en aplicaciones React importándolo según el contexto:
Componente Cliente:
typescriptCopiar códigoCopiar el código al portapapeles
import { useDictionary } from "next-intlayer"; // Usado en componentes React del lado cliente
Componente Servidor:
typescriptCopiar códigoCopiar el código al portapapeles
import { useDictionary } from "next-intlayer/server"; // Usado en componentes React del lado servidor
Parámetros
El hook acepta dos parámetros:
- dictionary: Un objeto diccionario declarado que contiene contenido localizado para claves específicas.
- locale (opcional): La configuración regional deseada. Por defecto, es la configuración regional del contexto actual si no se especifica.
Diccionario
Todos los objetos diccionario deben declararse en archivos de contenido estructurado para garantizar la seguridad de tipos y prevenir errores en tiempo de ejecución. Puedes encontrar las instrucciones de configuración aquí. Aquí tienes un ejemplo de declaración de contenido:
Copiar el código al portapapeles
import { t, type Dictionary } from "intlayer";const exampleContent = { 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 exampleContent;
Ejemplo de uso en un componente cliente de React
A continuación se muestra un ejemplo de cómo usar el hook useDictionary en un componente React:
Copiar el código al portapapeles
"use client";import type { FC } from "react";import { useDictionary } from "next-intlayer";import clientComponentExampleContent from "./component.content";const ClientComponentExample: FC = () => { const { title, content } = useDictionary(clientComponentExampleContent); return ( <div> <h1>{title}</h1> <p>{content}</p> </div> );};
Ejemplo de uso en un componente React del lado del servidor
Si usas el hook useDictionary fuera del IntlayerServerProvider, el locale debe proporcionarse explícitamente como parámetro al renderizar el componente:
Copiar el código al portapapeles
import type { FC } from "react";import { useDictionary } from "next-intlayer/server";import clientComponentExampleContent from "./component.content";const ServerComponentExample: FC = () => { const { content } = useDictionary(clientComponentExampleContent); return ( <div> <h1>{content.title}</h1> <p>{content.content}</p> </div> );};
Notas sobre los Atributos
A diferencia de las integraciones que usan editores visuales, atributos como buttonTitle.value no se aplican aquí. En su lugar, accede directamente a las cadenas localizadas tal como están declaradas en tu contenido.
Copiar el código al portapapeles
<button title={content.title}>{content.content}</button>
Consejos Adicionales
- Seguridad de Tipos: Siempre usa Dictionary para definir tus diccionarios y asegurar la seguridad de tipos.
- Actualizaciones de Localización: Al actualizar el contenido, asegúrese de que todas las locales sean consistentes para evitar traducciones faltantes.
Esta documentación se centra en la integración del hook useDictionary, proporcionando un enfoque simplificado para gestionar contenido localizado sin depender de funcionalidades de editores visuales.
Historial del Documento
- 5.5.10 - 2025-06-29: Historia inicial