gpt4 book ai didi

javascript - Shiny :将 reactiveValues 传递给 conditionalPanel

转载 作者:可可西里 更新时间:2023-11-01 02:22:16 24 4
gpt4 key购买 nike

我可以将 reactiveValues 传递给 conditionalPanel 的条件吗?如果是,怎么办?

这是我在 conditionalPanel ui.R 中尝试过的:

conditionalPanel(condition = "values.cond == 0", etc.

我在 server.R 中定义 values$cond 的地方:

values <- reactiveValues(cond = 0)

我也尝试过类似 "values.cond == true" 的替代方法,但没有成功。

library("shiny")
runGist("https://gist.github.com/anonymous/8281021")

查看代码:

https://gist.github.com/anonymous/8281021

最佳答案

正如@jdharrison 指出的那样,您遇到了问题,您在服务器端有反应性 或任何其他数据,而条件面板是 JS 条件 + 客户端的一些 HTML。因此,如果你想根据你在服务器端计算的某个值动态更新JS条件,你需要从服务器获取数据到客户端。我认为您可以做的是使用 shiny 的一个尚未记录的功能将自定义数据从服务器传递到客户端。我写了一篇关于如何做到这一点的博客文章:http://ryouready.wordpress.com/2013/11/20/sending-data-from-client-to-server-and-back-using-shiny/

我想您可以使用该方法来动态更新 JS 面板条件。您需要编写一个 JS 函数在数据传递后执行此操作。所以这归结为用您想要的值替换 conditionalPanel 输出的 data-display-if 属性。

另一个想法:如果您的 UI 强烈依赖于服务器端的计算,您可能需要考虑使用 renderUI 动态创建(侧边栏)内容。

编辑:顺便说一句,这就是@jdharrison 在他的第二条评论中提到的内容。

关于javascript - Shiny :将 reactiveValues 传递给 conditionalPanel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20948302/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com