* docs: (ru) config/README.md update devServer example * docs: (ru) creating-a-project.md update * docs: css.md add less examples * docs: browser-compatibility.md update * docs: deployment.md update * docs: (ru) config/readme.md update * docs: (ru) deployment.md update * docs: (ru) prototyping.md add yarn command * docs: config.md fix * docs: ui-localization.md typo * docs: [RU] Translation update * docs: [RU] Translation update * docs: vuex.md added * docs: router.md added * docs: migration from v3 added * docs: config.js updated * docs: config/readme.md updated * docs: unit-mocha.md updated * docs: css.md updated * docs: cli-service.md updated * docs: generator-api.md updated * docs: build-target.md update * docs: deployment.md update * docs: e2e-nightwatch.md update * docs: unit-jest.md update * docs: e2e-nightwatch.md update * docs: migrating-from-v3.md update * docs: plugin-dev.md update * docs: plugin-dev.md update * docs: plugin-dev.md update * docs: plugin-dev.md update
3.1 KiB
Локализация в UI
Локализация стандартного UI
Для упрощения совместной работы и синхронизации результатов, исходная английская локализация из ветви dev автоматически импортируется в Transifex, платформу совместных переводов.
Для существующих переводов, вы можете зарегистрироваться в качестве переводчика. Для новых переводов, вы можете запросить добавление нового языка после регистрации.
В любом случае вы можете переводить ключи по мере их добавления или изменения в исходной локализации.
Локализация вашего плагина
Вы можете поместить файлы локализаций, совместимые с vue-i18n в каталог locales в корне вашего плагина. Они будут автоматически загружены в клиент при открытии проекта. Вы можете использовать $t для перевода строк в ваших компонентах и другие возможности vue-i18n. Также, любые строки используемые в UI API (такие как describeTask) будут также обрабатываться vue-i18n, поэтому вы сможете локализовать и их.
Пример каталога locales:
vue-cli-plugin/locales/en.json
vue-cli-plugin/locales/fr.json
Пример использования в API:
api.describeConfig({
// путь vue-i18n
description: 'com.my-name.my-plugin.config.foo'
})
::: danger Убедитесь! В правильно указанном пространстве имён; оно должно быть уникальным для всех плагинов. Рекомендуется применять нотацию перевёрнутого доменного имени. :::
Пример использования в компонентах:
<VueButton>{{ $t('com.my-name.my-plugin.actions.bar') }}</VueButton>
Вы также можете загружать переводы в клиентском расширении, с помощью ClientAddonApi:
// Загрузка файлов локализации (используется vue-i18n)
const locales = require.context('./locales', true, /[a-z0-9]+\.json$/i)
locales.keys().forEach(key => {
const locale = key.match(/([a-z0-9]+)\./i)[1]
ClientAddonApi.addLocalization(locale, locales(key))
})