重新加载应用程序时是否可以清除闪亮缓存?

问题描述 投票:0回答:1

重新加载应用程序时是否可以清除闪亮的缓存历史记录?具体来说,我有一个用于添加标题的 textInput,该标题在应用程序重新启动时不会清除。换句话说,之前运行时输入应用程序的所有标题都已被“记住”,并在应用程序重新运行或重新启动时显示在下拉列表中。我尝试过使用shinyjs::reset,但这会清除当前值,而不是“历史记录”中的值。我还尝试使用 updateTextInput 将操作按钮设置为“”,但也仅清除当前值,而不清除“历史记录”中的值。我还尝试使用以下方法将 ui 设置为函数:

ui<- function(req) { fluidPage(...) }

以及:

我发现当文件“app.R”的创建日期更改时,R Shiny 服务器的缓存也会更新。

所以,这是我使用的技巧:

服务器<- function(input, output, session) {

技巧文件创建日期更新 onStop(函数() {

 # File name
 p <- paste0(getwd(), "/app.R")

 # Update file 'date creation'
 Sys.setFileTime(p, now())

}) # onStop

} # 服务器 这个想法是在每次会话后更新“app.R”创建的日期。

这些解决方案都不适合我。终于找到这个帖子了:

我还发现了这篇文章:

我已经在这个问题上挣扎了很长一段时间,并认为我已经尝试了一切,包括在闪亮的侧边栏上放置一个 js 按钮来手动刷新(不幸的是,这也不起作用)。有两件事对我有用:

  1. 确保从文件读取数据的所有代码都不位于名称为

    global
    OR

    以外的代码块中
  2. 新数据上传时手动重启shiny服务器

显然第一个更易于管理,我希望几周前当我开始使用变通方法时就知道这个解决方案。

但我不确定实施其中涉及什么,所以如果有人能澄清这一点,那就太好了。

任何帮助将不胜感激。

r caching input shiny restart
1个回答
0
投票

今天之后,我修复了它: 按照这个: 首先:你应该使用 crontab 来安排时间工作; 然后:添加以下 R 代码: 文件路径<- "ui.R" ## remermer use Absolute Path and chmod 666 ui.R lines <- readLines(file_path) new_line <- paste0("print('up last time ", substr(as.character(Sys.time()), 1, 19), "')") lines <- c(new_line, lines) writeLines(lines, file_path)

© www.soinside.com 2019 - 2024. All rights reserved.