# General Translation React SDKs (gt-react, gt-next): useMessages URL: https://generaltranslation.com/ja/docs/react/reference/hooks/use-messages.mdx --- title: useMessages description: General Translation gt-react で `msg` に登録された文字列をアクティブなロケールに解決します。useMessages の API リファレンス。 --- `useMessages` フックは、[`msg`](/docs/react/reference/functions/msg) で作成されたエンコードされた文字列をアクティブなロケールに解決する関数を返します。コンポーネントの外、モジュールスコープで登録された文字列を翻訳する際に使用します。 *`gt-react`、`gt-next`、`gt-tanstack-start`、`gt-react-native` で利用できます。例では `gt-react` から import していますが、代わりに使用しているフレームワークのパッケージから import してください。* ## 概要 [#overview] `msg` で文字列を登録し、`useMessages` が返す関数でその文字列を解決します。 ```tsx const m = useMessages();
{m(encodedString)}
; ``` *注: `gt-react` では、[`{m(encodedGreeting)}
; } ``` ```tsx import { msg, useMessages } from 'gt-react'; const encodedGreeting = msg('Hello, {name}!'); export default function TranslateGreeting() { const m = useMessages(); return{m(encodedGreeting, { name: 'Bob' })}
; // "Hello, Bob!" } ``` ```tsx import { msg, useMessages } from 'gt-react'; // msg() に渡された変数は m() に渡された変数より優先されます const encodedGreeting = msg('Hello, {name}!', { name: 'Alice' }); export default function TranslateGreeting() { const m = useMessages(); return{m(encodedGreeting, { name: 'Bob' })}
; // "Hello, Alice!" } ``` ## メモ [#notes] * `useMessages` は [`msg`](/docs/react/reference/functions/msg) のエンコードされた文字列を解決します。 * 非同期の App Router コンポーネントでは、代わりに [`getMessages`](/docs/react/nextjs/reference/functions/get-messages) を使用してください。 * 翻訳はビルド時に行われます (開発時はオンデマンドでも行われます) 。