- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个非常简单的应用程序失败了。它失败的原因是 react 数据集仅在 observeEvent 函数内可用,但在外部不可用。我使用 observeEvent 从两个不同的来源获取数据集。对于这个例子,我只使用了 cbind。我的实际代码要复杂得多。
这是一个与逻辑/语法相关的问题,但我的所有搜索都没有成功。本质上,我希望 merged_data() 可用于应用程序的所有部分。
最小 repr 示例 - 这失败,因为 merged_data() 在 ObserveEvent 之外不可用。
library(shiny)
library(shinyjs)
library(DT)
# Define UI for application that draws a histogram
ui <- fluidPage(
# Application title
titlePanel("testing 1 2 3"),
# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
),
# Show a plot of the generated distribution
mainPanel(
fluidRow(
column(width = 2,
offset = 0,
align = "center",
actionButton(inputId = "fetch_data_inputId",
label = "data")
) #column
,
column(width = 10,
offset = 0,
align = "center",
DT::dataTableOutput("DT1")
) #column
)#fluidrow
)
)
)
# Define server logic required to draw a histogram
server <- function(input, output,session) {
observeEvent(input$fetch_data_inputId, {
req(iris)
button_data <- colnames(iris)
merged_data <- reactive({
if( !is.null(cbind(iris[,1:4],iris3))) {
cbind(iris[,1:4],iris3)
} else {NULL}
})
}) #observeevent
output$DT1 <- renderDataTable({#
rendered_table <- merged_data()
DT::datatable(rendered_table)
})
}
# Run the application
shinyApp(ui = ui, server = server)
最小 repr 示例 - 这有效 因为数据表是在 ObserveEvent 中创建的。
library(shiny)
library(shinyjs)
library(DT)
# Define UI for application that draws a histogram
ui <- fluidPage(
# Application title
titlePanel("testing 1 2 3"),
# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
),
# Show a plot of the generated distribution
mainPanel(
fluidRow(
column(width = 2,
offset = 0,
align = "center",
actionButton(inputId = "fetch_data_inputId",
label = "data")
) #column
,
column(width = 10,
offset = 0,
align = "center",
DT::dataTableOutput("DT1")
) #column
)#fluidrow
)
)
)
# Define server logic required to draw a histogram
server <- function(input, output,session) {
observeEvent(input$fetch_data_inputId, {
req(iris)
button_data <- colnames(iris)
merged_data <- reactive({
if( !is.null(cbind(iris[,1:4],iris3))) {
cbind(iris[,1:4],iris3)
} else {NULL}
})
output$DT1 <- renderDataTable({#
rendered_table <- merged_data()
DT::datatable(rendered_table)
})
}) #observeevent
}
# Run the application
shinyApp(ui = ui, server = server)
我真正需要的是 react 数据集继续在 observeEvent 中创建,但可以在 ObserveEvent 环境之外访问,以便我在应用程序的其他部分使用它,但我怀疑这是错误的方法。所以任何有用的东西都会很棒。
最佳答案
library(shiny)
library(shinyjs)
library(DT)
# Define UI for application that draws a histogram
ui <- fluidPage(
# Application title
titlePanel("testing 1 2 3"),
# Sidebar with a slider input for number of bins
sidebarLayout(
sidebarPanel(
),
# Show a plot of the generated distribution
mainPanel(
fluidRow(
column(width = 2,
offset = 0,
align = "center",
actionButton(inputId = "fetch_data_inputId",
label = "data")
) #column
,
column(width = 10,
offset = 0,
align = "center",
DT::dataTableOutput("DT1")
) #column
)#fluidrow
)
)
)
# Define server logic required to draw a histogram
server <- function(input, output,session) {
merged_data <- eventReactive(input$fetch_data_inputId, {
req(iris)
button_data <- colnames(iris)
if( !is.null(cbind(iris[,1:4],iris3))) {
cbind(iris[,1:4],iris3)
} else {NULL}
}) #eventReactive
output$DT1 <- renderDataTable({#
rendered_table <- merged_data()
DT::datatable(rendered_table)
})
}
# Run the application
shinyApp(ui = ui, server = server)
关于r - observeEvent 中 Shiny 的 react 数据集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47773030/
我正在尝试重新创建 https://gist.github.com/wch/5436415/但是通过一个按钮添加图。我认为这需要我沿着这些线路修改链接上的 server.r 代码(图表名称相关变量是通
我正在努力解决一个 react 性的 Shiny 问题,希望得到一些帮助。假设我有一个非常简单的应用程序,它显示给定一系列选择的平均高度: library(tidyverse) library(shi
预先感谢您的帮助。我试图将我的问题归结为尽可能简单的应用程序。我有一个调用 observeEvent 并返回一些 UI 元素的函数 sliderResetInput。我可以在模块外使用 sliderR
如何基于 TRUE/FALSE 复选框事件使用 observeEvent 触发操作(在本例中为 updateSelectInput)? 例如我想在测试为真时更新结果: library(shiny) u
我有以下代码。有没有办法将它写在循环或向量化语句中,例如 lapply?在我的实际代码中,我有更多的画笔,所以这将非常有帮助。谢谢。 忽略这一行。只需要添加更多文本。 observeEvent(inp
我正在开发一个应用程序,在其中我使用模块来显示不同选项卡的 ui 内容。但是,该模块似乎不与主(或父)应用程序通信。它显示正确的 ui 但无法执行 observeEvent actionButton
我想单击一个按钮,触发 insertUI,计算一些东西,最后删除 UI。而insertUI/removeUI是计算后生效的。 我正在按照官方示例动态更新 UI。 https://shiny.rstud
我想要两个不同的事件来触发观察者。有人建议here这应该工作。但似乎它只取决于第二个事件。 observeEvent({ input$spec_button mainplot.click$cl
我正在使用新的 firebase api 来观察实时数据库中名为“posts”的子路径 这是一个 JSON 条目: "posts" : { "-KLT6oYF-F_5sf-dC_2R" : { "
我开发了一个带有自定义 HTML 的简单 R-Shiny 应用程序,并且我有一组输入(在表格中),如下所示: i1 i2 i3 i4 我需要在用户点击其中任何一个时监听变化并更新矩阵上的一些值。我已经
由于 observeEvent 的工作方式(通常非常直观),我在获取我正在寻找的应用程序中的功能时遇到了一些麻烦。 我正在寻找的基本功能是用户可以输入几个数字,单击“提交”,然后弹出一个模式以获取用户
我想生成动态数量的 actionButton,然后让每个生成的按钮将其编号打印到控制台。到目前为止,这是我最好的尝试,但我仍然无法为前 10 个按钮中的每个按钮获取 observeEvent 以识别按
我想添加功能,一旦用户点击 downloadButton 就会给予用户反馈。在我 Shiny 的应用程序中(例如,它会给用户一条警告消息或在点击后切换 ui 元素)。本质上,我希望能够拥有 downl
我正在开发一个 Shiny 的应用程序,但我遇到了 observeEvent() 的困难在创建全部源自 selectInput() 的多个输入的复杂表达式时起作用. 我的问题是 observeEven
我有一个非常简单的应用程序失败了。它失败的原因是 react 数据集仅在 observeEvent 函数内可用,但在外部不可用。我使用 observeEvent 从两个不同的来源获取数据集。对于这个例
我希望在清除输入列表时触发 observeEvent。 这是一个小示例应用程序: library(shiny) ui <- fluidPage( selectizeInput(inputId='s
我想立即更新 tabsetpanel,而不是等到完成下载功能。在这里你可以找到一个简单的代码它有一个按钮,当它按下时,它模拟下载,并更新一个 tabsetpanel。我想在完成下载之前更新面板。 谢谢
我希望使用下面的简化代码作为示例,对 Shiny 的 react 行为有一些了解。 当 y 在应用程序中更新时,图表也会更新。 当 x 在应用程序中更新时,图表不会更新。 我已经阅读了 Shiny 的
我试图通过点击 map 来获取国家信息,但国家名称或 Long/lat 没有打印出来。 任何人都可以在这个问题上启发我吗? 谢谢 该 map 来自自然地球。 library(rgdal) librar
之前,我构建了一个 Shiny 的仪表板,其中包含图表输出,效果很好,如下所示: output$someName <- renderGvis({ input$inputButton data
我是一名优秀的程序员,十分优秀!