локализация строк в JavaScript - PullRequest
2 голосов
/ 19 января 2012

Нам нужно иметь возможность локализовать строки в javascript - думать о таких вещах, как файл app_offline.htm и т. Д.

Глобализация jquery - это беспокойство и похоже на полное излишество.Есть ли простой плагин jquery или что-нибудь действительно, что позволит нам локализовать строки js?

Ответы [ 2 ]

2 голосов
/ 19 января 2012

С риском чрезмерного упрощения:

var globals = {
    en-US: {
        color:'color',
        cell:'cell phone'
    },
    en-GB: {
        color: 'colour',
        cell: 'mobile phone'
    }
};

Для использования:

text = globals[lang].color;

, где lang = 'en-US' и т. Д.

Вы можете создатьэту структуру на сервере и используйте там файлы ресурсов и т. д., или просто сохраняйте этот объект буквальным как global.js или аналогичный.

1 голос
/ 19 января 2012

Библиотека Globalize.js, ранее известная как jquery-global или jQuery Globalize, сравнительно мала, но если вам только нужна локализация строк (а не локализация даты и чисел), то она делаетне предлагать гораздо больше, чем общая настройка: объект locale (culture), содержащий свойство messages.Он инициализируется пустым объектом, и вы должны добавить к нему свойства, соответствующие вашим строкам для локализации.И у него есть простой метод Globalize.localize(), который выбирает локализованную строку для ключа

Чтобы реализовать простую локализацию строки, вам не обязательно нужна какая-либо библиотека или плагин.Вы можете просто написать какой-нибудь простой подход, подобный тому, который используется в Globalize.js;общий код довольно прост, гораздо меньше работы, чем определение фактических локализаций для каждой строки.С другой стороны, если у вас есть потребности в локализации, вы также можете использовать Globalize.js, готовясь к другим видам локализации в будущем.

...