R shiny 中是否有一种方法可以连接输入采用的所有值
Is there a way in R shiny to concatenate all values taken by an input
我的问题很基础。
INPUT : 键盘上的任意键 (input$mydata)
SERVER :注册 input$data 中发生的所有更改(例如在向量中)
期望输出:输入 $mydata
所采用的所有值的向量
(当注册了 50 个值时,向量可能会被重置)
我尝试了很多方法,甚至是全局值,但没有任何效果...
这是显示最后一次按键输入的代码
library(shiny)
runApp( list(ui = bootstrapPage(
verbatimTextOutput("results"),
verbatimTextOutput("allInputs"),
tags$script('
$(document).on("keypress", function (e) {
Shiny.onInputChange("mydata", e.which);
});
')
)
, server = function(input, output, session) {
output$results = renderPrint({
input$mydata
})
}
))
您可以将更改附加到 reactiveVal
:
library(shiny)
runApp( list(ui = bootstrapPage(
verbatimTextOutput("results"),
verbatimTextOutput("allInputs"),
tags$script('
$(document).on("keypress", function (e) {
Shiny.onInputChange("mydata", e.which);
});
')
)
, server = function(input, output, session) {
output$results = renderPrint({
input$mydata
})
keysPressed <- reactiveVal()
observeEvent(input$mydata, {
keysPressed(c(keysPressed(), input$mydata))
})
output$allInputs = renderPrint({
keysPressed()
})
}
))
我的问题很基础。
INPUT : 键盘上的任意键 (input$mydata)
SERVER :注册 input$data 中发生的所有更改(例如在向量中)
期望输出:输入 $mydata
所采用的所有值的向量
(当注册了 50 个值时,向量可能会被重置)
我尝试了很多方法,甚至是全局值,但没有任何效果...
这是显示最后一次按键输入的代码
library(shiny)
runApp( list(ui = bootstrapPage(
verbatimTextOutput("results"),
verbatimTextOutput("allInputs"),
tags$script('
$(document).on("keypress", function (e) {
Shiny.onInputChange("mydata", e.which);
});
')
)
, server = function(input, output, session) {
output$results = renderPrint({
input$mydata
})
}
))
您可以将更改附加到 reactiveVal
:
library(shiny)
runApp( list(ui = bootstrapPage(
verbatimTextOutput("results"),
verbatimTextOutput("allInputs"),
tags$script('
$(document).on("keypress", function (e) {
Shiny.onInputChange("mydata", e.which);
});
')
)
, server = function(input, output, session) {
output$results = renderPrint({
input$mydata
})
keysPressed <- reactiveVal()
observeEvent(input$mydata, {
keysPressed(c(keysPressed(), input$mydata))
})
output$allInputs = renderPrint({
keysPressed()
})
}
))