# General Translation React SDKs (gt-react, gt-next, gt-react-native): useLocale
URL: https://generaltranslation.com/zh/docs/react/reference/hooks/use-locale.mdx
Docs index: https://generaltranslation.com/llms.txt
Description: 读取当前区域设置。useLocale 的 API 参考。

`useLocale` 钩子会从 [`<GTProvider>`](/docs/react/reference/components/gt-provider) 上下文中返回用户当前的区域设置，格式为 BCP 47 区域设置代码，例如 `en-US`。

*可用于 `gt-react`、`gt-next`、`gt-tanstack-start` 和 `gt-react-native`。*

## 概览 [#overview]

调用 `useLocale` 以读取当前的区域设置。

*示例从 `gt-react` 导入；请改为从您所用框架的软件包中导入。*

```tsx
import { useLocale } from 'gt-react';

export default function CurrentLocale() {
  const locale = useLocale(); // [!code highlight]
  return <p>Current locale: {locale}</p>;
}
```

*注意：在 `gt-react` 中，请在 [`<GTProvider>`](/docs/react/reference/components/gt-provider) 内调用 `useLocale`。在 `gt-next` 中，它也可用于同步服务器组件。*

## 工作原理 [#how-it-works]

当请求的区域设置不受支持时，系统会选择一个后备区域设置：

* 如果用户在浏览器中设置了多个首选区域设置，且其中一个受支持，则使用最合适的受支持语言。
* 否则，如果两个区域设置属于同一种语言 (例如 `en-US` 和 `en-GB`) ，则使用该语言对应的受支持区域设置。
* 如果以上两种情况都不适用，则使用[默认区域设置](/docs/react/reference/config#default-locale)。

## 返回值 [#returns]

**类型** `string`

用户当前的区域设置，如 `en-US`。

## 说明 [#notes]

* 在异步 App Router 组件中，请改用 [`getLocale`](/docs/react/nextjs/reference/functions/get-locale)。
* 如需更改区域设置，请使用 [`useSetLocale`](/docs/react/reference/hooks/use-set-locale)；如需读取源区域设置，请使用 [`useDefaultLocale`](/docs/react/reference/hooks/use-default-locale)。

## Sitemap

See the full [sitemap](https://generaltranslation.com/sitemap.md) for all pages.
