r - Shiny :动态更改选项卡名称

标签 r shiny translation navbar tabpanel

我正在开发一个可以处理多种语言的 Shiny 应用程序。我设法根据 selectInput 来动态翻译应用程序的几乎所有元素以选择语言。然而,“硬东西”仍然是 navbarPage 选项卡以及我页面中的 tabPanels。我不能改变他们的名字。我试过这个,但它不起作用:

library(shiny)
ui <- navbarPage("App Title",
                 tabPanel("tab1", 
                          selectInput("language", "language", c("EN", "FR"), width = '300px'),
                          textOutput("text")),
                 uiOutput("render_tab2"))
server <- function(input, output, session) {
  output$text = renderText({ switch(input$language, "EN"="hello world", "FR"="bonjour monde")  })
  output$render_tab2 = renderUI({
    tabPanel( title=switch(input$language, "EN"="tab2", "FR"="onglet2") )})}
shinyApp(ui, server)
updatenavbarpanel() 系列函数只是设置事件选项卡,而不是改变它们的特性......有没有办法做到这一点,如果可能的话,不会改变我所有应用程序的结构......非常感谢。

最佳答案

这段代码动态设置标题:

library(shiny)
ui <- navbarPage("App Title",
                 tabPanel(title = uiOutput("title_panel"), 
                          selectInput("language", "language", c("EN", "FR"), width = '300px')
                )
    )

server <- function(input, output, session) {

    output$title_panel = renderText({
        switch(input$language, "EN"="hello world", "FR"="bonjour monde") 
    })
}

shinyApp(ui, server)

编辑:适用于 uiOutput("title_panel")textOutput("title_panel")

关于r - Shiny :动态更改选项卡名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47896844/

相关文章:

r - 当标题是ggplot2中的变量时,如何更改绘图标题的字体大小?

r - 使用 ReporteRs 包通过 R Shiny 生成 powerpoint 幻灯片

r - 在没有公共(public)变量的情况下执行 dplyr full_join 以混合数据帧

r - 使用操作按钮 Shiny 更新表格

asp.net Web 表单国际化

java - 将c++代码翻译成java

r - 如何更改ggplot2中的默认字体大小

r Shiny 的本地生活在不同的路径/域上

r - 使用renderTable()输出一个好看的矩阵

Django 翻译 : add custom translation