【发布时间】:2018-01-15 00:11:47
【问题描述】:
我需要一个基于外部函数的动态滑块值。在这里,我基于 runif(...) 实现了它,但是,对于我的实际应用程序,它是一个网络调用,用于从互联网上检索一个值,该值可能每天更改一次或类似的东西。
global.R
dynamicValue = function(){
runif(1)
}
ui.R
library(shiny)
shinyUI(
fluidPage(
shiny::sidebarPanel(
sliderInput("slider",
"SliderInput",
min = 0,
max = 1,
value = dynamicValue()
)
),
shiny::mainPanel(
)
)
)
现在上面的问题是,它只被解决一次,就像如果页面被刷新,值保持不变。
这可以通过以下方式解决:
server.R
library(shiny)
shinyServer(function(input, output, session) {
updateSliderInput(session, "slider", value = dynamicValue() )
})
但是,我有很多地块,它们渲染一次,然后更新滑块,导致所有内容都无效并再次渲染。
有人可以向我解释一下如何拥有一个动态滑块,其中的值是由一个非确定性函数确定的,每次加载页面时都会解决这个问题,并且在处理任何其他内容之前。
【问题讨论】: