我的 R 程序按预期工作。它显示了一个包含我的数据帧的表,并让我编辑这些值。
如何捕获这些值并将它们保存到我的数据帧或我的数据帧的副本?
require(shiny)
library(rhandsontable)
DF = data.frame(val = 1:10, bool = TRUE, big = LETTERS[1:10],
small = letters[1:10],
dt = seq(from = Sys.Date(), by = "days", length.out = 10),
stringsAsFactors = F)
rhandsontable(DF, rowHeaders = NULL)
Run Code Online (Sandbox Code Playgroud)
编辑:上面的代码生成一个包含行和列的表。我可以编辑任何行和列。但是当我查看我的数据框时,这些编辑不会出现。我想弄清楚的是我需要更改什么才能捕获已编辑的新值。
考虑一下Joe Cheng 的演讲,他解释了他和他的同事如何在闪亮中实现响应式框架(受到Meteor的启发):

有人可以向我解释一下我将如何去查找自动推断出的反应式对象的依赖项(即列出它们的名称和环境,实际访问它们等)shiny::reactive()?
更具体地说,我想在我的自定义“一站式”功能setShinyReactive(包reactr)中使用该信息,该功能构建在闪亮的功能之上。
它必须以某种方式可以通过这些组件/类之一的方法实现:
shiny::Observable)shiny::Observer)shiny::Context和shiny::ReactiveEnvironment)但我仍然对这方面的实际细节感到困惑。
您可以在这里找到我用于逆向工程工作的闪亮版本的分叉版本。该.Rnw文件代表了我目前的知识状况以及有关实际实施的问题。
shiny::reactive()require(shiny)
## Ensure that shiny let's us do our thing //
shiny_opt <- getOption("shiny.suppressMissingContextError")
if (is.null(shiny_opt) || !shiny_opt) {
options(shiny.suppressMissingContextError = TRUE)
}
a <- 10
shiny::makeReactiveBinding("a")
b <- shiny::reactive(a * 2)
## --> this …Run Code Online (Sandbox Code Playgroud)