extendLocale 범위

사용자 정의 번역을 사용하여 기존 로케일을 확장하는 유틸리티입니다.

사용

자동으로 가져온 extendLocale 유틸리티를 사용하여 특정 등록 정보 또는 메시지를 재정의하여 기존 로케일을 사용자 정의합니다.

<script setup lang="ts">
import { en } from '@nuxt/ui/locale'

const locale = extendLocale(en, {
  code: 'en-AU',
  messages: {
    commandPalette: {
      placeholder: 'Search a component...'
    }
  }
})
</script>

<template>
  <UApp :locale="locale">
    <NuxtPage />
  </UApp>
</template>

이 기능은 다음을 수행할 때 유용합니다.This is useful when you want to:

  • 언어의 지역별 변형을 만듭니다 (예: en-AU from en)
  • 전체 로케일을 재정의하지 않고 특정 번역을 무시합니다.
  • 애플리케이션에 맞게 구성요소 레이블 사용자 정의

API

extendLocale<M>(locale: Locale<M>, options: Partial<DefineLocaleOptions<DeepPartial<M>>>): Locale<M>

제공된 옵션을 사용하여 기존 로케일을 확장하여 메시지를 깊이 결합합니다.

매개변수

locale
Locale<M> required
확장할 기본 로케일입니다. @nuxt/ui/locale에서 가져옵니다.
options
Partial<DefineLocaleOptions<DeepPartial<M>>> required
재정의할 속성:

**반환: **병합된 속성이 있는 새 Locale<M>개체입니다.

예

다음은 호주 변형에 대한 영어 로케일을 확장하는 예입니다.

<script setup lang="ts">
import { en } from '@nuxt/ui/locale'

const locale = extendLocale(en, {
  name: 'English (Australia)',
  code: 'en-AU',
  messages: {
    colorMode: {
      dark: 'Dark',
      light: 'Light',
      system: 'System'
    },
    selectMenu: {
      search: 'Search…',
      noData: 'No results found',
      noMatch: 'No matching results'
    }
  }
})
</script>

<template>
  <UApp :locale="locale">
    <NuxtPage />
  </UApp>
</template>
extendLocale 유틸리티는 전체 병합을 사용하므로 덮어쓰려는 메시지만 지정하면 됩니다. 다른 모든 메시지는 기본 로케일에서 상속됩니다.