'Translations in JS files with Symfony2

I'm currently developing an applications that will need to use translations from my JavaScripts.

The bundle BazingaJsTranslationBundle seems to be good, but after I tried it I don't think it fits my needs. It generates all the translations for all my application's bundles. It can be heavy to load.

Do you know other bundles or tricks for that ?

Thank you for your help.



Solution 1:[1]

I had similar problem (large translation files) with BazingaJsTranslationBundle and I simplify this by:

#config.yml
bazinga_expose_translation:
    default_domains: [ jsonly ]
    locale_fallback: "%locale%"

create simple html twig to store your js variables and bazing expose them from this files

{# jsOnleVariables.html.twig #}
{% set var1 = 'Welcome'|trans({},'jsonly') %}
{% set var2 = 'Bye'|trans({},'jsonly') %}

dump variables

php app/console bazinga:expose-translation:dump web/js

and in your layout include only wanted variables

{# layout.html.twig #}
<script src="{{ asset('bundles/bazingaexposetranslation/js/translator.js') }}" type="text/javascript"></script>

{% if app.request.locale == 'pl' %}
<script src="{{ asset('js/i18n/jsonly/pl.js') }}" type="text/javascript"></script>
{% else %}
<script src="{{ asset('js/i18n/jsonly/en.js') }}" type="text/javascript"></script>
{% endif %}

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 poh