/ / Ember e internacionalización: solicitud de mejores prácticas y enfoque de implementación - internacionalización, ember.js, aplicación de una sola página

Ember e internacionalización: solicitud de mejores prácticas y enfoque de implementación - internacionalización, ember.js, aplicación de una sola página

Estoy trabajando en una aplicación de una sola página que requiere funciones de internacionalización (traducción de todas las cadenas estáticas al idioma del usuario y la configuración de la fecha y los formatos de moneda).

Estoy usando Ember.js, por lo tanto, la mayoría de las cadenas estáticas están en bloques HTML (en plantillas o vistas) o en mensajes típicos de Javascript como "¿Está seguro de que desea eliminar el ..." (parte de los archivos del controlador)?

Estoy buscando las mejores prácticas y experiencias sobre cómo abstraer todas estas cadenas y otros bits específicos de la configuración regional de la aplicación.

Veo principalmente un problema con el hecho de que lael idioma del usuario solo se determina después de iniciar sesión. Pero en ese momento, la aplicación completa ya está cargada (en inglés) y, por lo tanto, no es posible "redirigir" a otro idioma (a menos que cargue todas las cadenas de todos los idiomas posibles al inicio de la aplicación, pero esto requeriría demasiados datos cargado al inicio).

Cualquier comentario es bienvenido!

- ACTUALIZACIÓN -

Mientras tanto, encontré la biblioteca ember-i18n que puedo usar para la traducción de cadenas (https://github.com/jamesarosen/ember-i18n)

Sin embargo, mi pregunta principal sigue siendo: ¿cómo se pueden cargar dinámicamente los archivos translation.js correspondientes a un idioma seleccionado o correspondientes al idioma del usuario después de iniciar sesión?

Y hay una manera de almacenar el idioma seleccionado para que, al inicio de la próxima aplicación, la aplicación use el idioma correcto (por lo tanto, cargue el archivo de traducción correcto antes de representar la IU).

Espero que alguien pueda ayudar.

Bagazo

Respuestas

1 para la respuesta № 1

Puede almacenar la configuración de idioma en una cookie, pero eso no es un enfoque del 100%. O simplemente cargue el json de traducción con una llamada ajax tan pronto como sepa el idioma.