2017-07-18 48 views
0

红宝石与木偶应用木偶(骨干)只呈现新内容时,我修改HTML内容

当我尝试查看正确的语言与国际化了变化它(国际化-JS红宝石宝石轨道/骨干网)我发现内容只是改变,并添加正确的语言到该地区,当我添加任何手动更改为layout-menu.jst.ejs.erb模板文件。

这是我对menu-view.js.coffee

@CitaManager.module "Layout", (Layout, CitaManager, Backbone, Marionette, $, _) -> 
    Layout.MenuView = Marionette.ItemView.extend 
    template: JST["marionette/mine/templates/layout-menu"] 
    ui: 
     btnAgenda: ".btn_agenda" 
     btnNotes: ".btn_notes" 
     btnVideoconference: ".btn_videoconference" 
     btnIndicators: ".btn_indicators" 
     btnVademecum: ".btn_vademecum" 
    triggers: 
     "click @ui.btnAgenda": "menu:agenda" 
     "click @ui.btnNotes" : "menu:notes" 
     "click @ui.btnVideoconference" : "menu:videoconference" 
     "click @ui.btnIndicators" : "menu:indicators" 
    events: 
     "click .btn": "btnClicked" 
     "click @ui.btnVademecum": "openVademecum" 
    initialize: (options)-> 
     @isPremium = options.isPremium 
     @isStandard = options.isStandard 

    btnClicked: (event) -> 
     $('li', $(event.target).closest('ul')).removeClass('active'); 
     $(event.target).closest('li').addClass('active'); 

    openVademecum: -> 
     if this.isPremium 
     window.open('http://www.vademecum.es/registrase_connect?urlBack=http%3A%2F%2Fwww.vademecum.es%2F', 'newwindow', 'width=400, height=400'); 
     else 
     bootbox.alert('Lo sentimos, este servicio solo está disponible para los planes premium') 
     return false 

    onRender: -> 
     console.log "Menu rendered" 

我贴在这个

<p> 
    <%= I18n.locale %> 
</p> 

我重新加载页面的变化,引起的模板,然后它说ES (西班牙语)谁写的代码,当然,您可以查看西班牙文的文本,但如果我将语言更改为“en”(英语),它仍然在视图上显示es但如果我打开控制台并现在键入s ame:I18n.locale它说“en”

+1

Backbone不提供双向绑定。你需要另外一个lib来做到这一点,或者你只需​​要在有变化的地方重新渲染视图。 –

+0

谢谢@EmileBergeron –

回答

0

解决!

问题出在文件名layout-menu.jst.ejs.erb刚删除.erb工作。