我有时使用momentjs-rails gem,我在2016-11
2116-11
1116-11
添加了西班牙语区域设置。我使用I18n宝石,当我切换应用程序的全球语言时,我无法切换javascripts/moment/es.js
语言。
添加,moment
以西班牙语显示,并添加; moment.locale('es');
以英文展示,但它不会因I18n而改变。
我在application.js.erb
中尝试过moment.locale('en');
但是<% if I18n.locale == :es %>
moment.locale('es');
<% end %>
<% if I18n.locale == :en %>
moment.locale('en');
<% end %>
的语言仍然是&#39; top&#39;选项,在这种情况下&#39; es&#39;。
所以用;
moment
顶部选项是&#39; en&#39;所以用英文显示。
当我在I18n改变语言时,如何改变moment.js语言?
答案 0 :(得分:1)
将此代码放在application.html中,切换语言和刷新页面。检查它是否适合您,而不是将其放到application.js.erb。
<script type="text/javascript">
<% if I18n.locale == :en %>
moment.locale('en');
<% end %>
<% if I18n.locale == :es %>
moment.locale('es');
<% end %>
</script>
由于
答案 1 :(得分:0)
要做到这一点,你需要将网络的实际i18n语言放到js,可以这样做:
在主布局或application.js
中var i18n_locale = "<%= I18n.locale %>"
当你初始化momentjs时:
moment.locale('en');
我希望它有所帮助。