- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个带有 ui 的 Shiny 应用程序,它由一个带有不同 tabPanel 的 navbarPage 组成。在那些里面,我希望每个选项卡都有相同的按钮。所以每个选项卡都有相同的按钮,链接到相同的输入。
例如
ui <- navbarPage( theme = shinytheme("sandstone"),
tabPanel(title="number one",
fluidRow(column(2, wellPanel(
sliderInput("one", "slider_one", value =0, min = 0, max=500, step=10),
sliderInput("two", "slider_two", value =250, min = 0, max=1000, step=10),
)),
column(8,
dataTableOutput('totals')
))),
tabPanel(title="number two" ,
fluidRow(column(2, wellPanel(
sliderInput("one", "slider_one", value =0, min = 0, max=500, step=10),
sliderInput("two", "slider_two", value =250, min = 0, max=1000, step=10)
)),
column(8,
dataTableOutput('totals_2')),
)))
在代码的服务器部分,我有一些依赖于插入的输入的 react 值和一些依赖于 react 值的输出(具有不同的名称)。
是否可以只为 react 值编写一次代码,例如仅针对第一个 tabPanel 上的输入(因为它们对于两个面板都是相同的),或者我应该为每个 tabPanel 本身定义 react 值(在这种情况下,我还应该重命名输入,以便它们在每个选项卡面板)?
例如
server <- function(input, output) {
react <- reactive({some_function(input$one, input$two)})
output$totals<-renderDataTable({react()
})
output$totals_2<-renderDataTable({react()
})
}
所以它应该写成下面的内容。
ui <- navbarPage( theme = shinytheme("sandstone"),
tabPanel(title="number one",
fluidRow(column(2, wellPanel(
sliderInput("one", "slider_one", value =0, min = 0, max=500, step=10),
sliderInput("two", "slider_two", value =250, min = 0, max=1000, step=10),
)),
column(8,
dataTableOutput('totals')
))),
tabPanel(title="number two" ,
fluidRow(column(2, wellPanel(
sliderInput("one1", "slider_one", value =0, min = 0, max=500, step=10),
sliderInput("two2", "slider_two", value =250, min = 0, max=1000, step=10)
)),
column(8,
dataTableOutput('totals_2')),
)))
server <- function(input, output) {
react <- reactive({some_function(input$one, input$two)})
react2 <- reactive({some_function(input$one1, input$two2)})
output$totals<-renderDataTable({react()
})
output$totals_2<-renderDataTable({react2()
})
}
我认为这会写很多东西,尤其是当您有很多参数时。
最佳答案
我想出了一种方法,可以通过循环创建 n 个选项卡。
library(shiny)
library(tidyverse)
library(shinythemes)
##modify n_ui to change de number of tabs
n_ui <- 10
ui <- fluidPage(
uiOutput('repeated_tabs') ##uiOutput can eventually be extended to be reactive on users input to control the n of tabs from inside the app.
)
server <- function(input, output, session) {
##create unique index for ids in each tab
number_panel <- as.character(seq(1, n_ui))
output$repeated_tabs <- renderUI({
#map will create n tabPanel`s as specified in n_ui at the start of the script
tabs <- map(number_panel, ~
tabPanel(title = paste('Tab', .x),
fluidRow(
column(4,
wellPanel(
sliderInput(paste0('one', .x), "slider_one", value =0, min = 0, max=500, step=10),
sliderInput(paste0('two',.x), "slider_two", value =250, min = 0, max=1000, step=10),
)),
column(8,
dataTableOutput(paste0('totals', .x))
))) )
tabisize <- partial(navbarPage, title = 'n Tabs app', theme = shinytheme("sandstone"))
exec(tabisize, !!!tabs) #lets me pass each element in tabs as an individual argument (a loop wont do it, neither purrr::reduce())
})
#to acces tab1 'totals' output
output$totals1 <- renderDataTable({iris})
}
shinyApp(ui, server)
关于r - navbarPage、Shiny R 中不同 tabPanel 上的相同输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52201183/
我的应用程序的布局由一个 TapPanel 组成,它包含另一个 TabPanel。我想让两个 TabPanel 看起来不同。按照关于应用样式的 GWT 教程,我执行了以下操作: TabPanel in
我希望当我启动应用程序时,选项卡面板 tab2 = 已停用, 一旦我单击第一个选项卡面板 tab1 中的按钮,就会被激活, 我尝试过使用 Shinyjs 和 CSS 属性,但我做不到。 感谢您的帮助
我是shiny的新手.我想从文件上传数据集并将其显示在 tabPanel 中.下一步是绘制数据集并在另一个 tabPanel 中显示该图。 .但是我发现当tabPanels的顺序改了,剧情没显示。 如
我正在尝试在我的“主页”tabPanel 上放置一个指向我应用程序的所有其他 tabPanel 的链接。 思路如下: ui = navbarPage("", tabPanel("ho
如何在 GWT 中的 UiBinder 中定义 TabPanel。 TabPanel 和 TabLayoutPanel 有什么区别。在哪里可以找到有关 TabPanel uibinder 参数的其他信
嗨,我正在寻找一种提交包含多个选项卡式表单的表单的方法。用户必须能够通过 POST 一次提交从所有选项卡提交全部数据。主要问题是数据不会提交,除非它被明确呈现/打开,并且在提交时不包括其他未呈现的选项
我正在使用 Shiny 的 R 网络应用程序,该应用程序由主面板左侧的侧栏面板(带有 2 个 tabspanel)和下方的另一个侧栏面板组成。 我想为第一个主面板保留底部侧边栏面板,但为第二个主面板将
我目前正在使用 GXT 3.1.1 显示带有两个选项卡的 TabPanel。第二个选项卡包含 VerticalLayoutContainer 内的 Grid。我的问题是网格的标题行未显示。当我颠倒选项
有什么方法可以禁用 Extjs4 选项卡面板上的所有子项,而不循环它们。 我的代码: var myPanel = new Ext.TabPanel({ region: 'east',
我正在尝试向 TabPanel 添加自定义图标,但当我这样做时,它只显示一个带圆 Angular 的黑框。 我的 CSS 看起来像这样:http://pastebin.org/447682 url 中
我应该如何操作 TabPanel 内的元素? 例如,在第一个选项卡上我有两个项目 - 这些是图表。但是,第二个项目与第一个项目的底部对齐(折线图)。如何将右侧的第二个项目(折线图)与左侧的第一个项目对
我已经开始了一个 sencha touch 项目(我第一次真正接触 JS),但恐怕我已经贪多嚼不烂了.. 我已经创建了大部分应用程序,但在尝试将嵌套列表放入选项卡面板时遇到问题。我收到此错误: Unc
此控件有一个属性 Enabled,其行为与 Visible 的行为完全相同,即 ?.Enabled = false 隐藏该控件。 我需要能够保持所有选项卡可见,但有些选项卡在代码控制下禁用。 关于如何
使用 navbarPage我想要一些 tabPanels右对齐,而其余的 tabPanels和 navbarMenus左对齐: 所以,而不是这个 library(shiny) ui = tag
我正在使用 Seam 2.1.2 和 RichFaces 3.3.2.SR1。
使用 ui <- navbarPage("mytitle", position = "fixed-top", tabPanel("tab1", "long
我为我 Shiny 的应用程序构建了以下模板。 ##ui.R shinyUI(navbarPage("My Application", tabPanel
我在一个区域中有一个带有 TreePanel 的面板布局。用户单击树中的一个节点,TabPanel 应显示在另一个区域,其中包含该树节点的信息、编辑工具等。 我有一个带有树面板和触发的 on('cli
我在 smartGWT 中创建了一个 tabPanel,附上截图我正在尝试增加我的选项卡标题宽度或使我的标题名称垂直放置使“公司信息”和“关系”的名称可以在一行中可见 我用过这个小部件
我有一个 tabpanel,它是表单的一部分(输入字段位于不同的选项卡上)。如果表单包含无效字段,即使它们不在当前选项卡上,我也需要在提交时通知用户。我认为最好的方法是更改标签颜色。 问题是如何在
我是一名优秀的程序员,十分优秀!