Kev*_*vin 2 r shiny shinydashboard shinyjs
我正在尝试为我的仪表板创建一个加载页面,但我似乎无法让它工作。我按照这里的例子;闪亮的仪表板 - 显示一个专用的“加载..”页面,直到数据的初始加载完成,但它是用于流体页面而不是闪亮的仪表板,我不知道如何调整它。
任何帮助,将不胜感激!
我希望加载页面只是一个流畅的页面(没有标题或侧边栏),然后让我的主仪表板具有闪亮的仪表板方面。
额外:如果我可以在加载屏幕上添加一个 gif,那就太棒了。就像是:
<iframe src="https://giphy.com/embed/BlmF3MhGfa4SY" width="480" height="360" frameBorder="0" class="giphy-embed" allowFullScreen></iframe><p><a href="https://giphy.com/gifs/plane-BlmF3MhGfa4SY">via GIPHY</a></p>
Run Code Online (Sandbox Code Playgroud)
[休息]
library (shiny)
library (shinydashboard)
library(shinyjs)
rm(list=ls())
appCSS <- "
#loading_page {
position: absolute;
background: #000000;
opacity: 0.9;
z-index: 100;
left: 0;
right: 0;
height: 100%;
text-align: center;
color: #FFFFFF;
}
"
header <- dashboardHeader()
sidebar <- dashboardSidebar()
body <- dashboardBody("It worked!")
ui <- dashboardPage(
useShinyjs(),
inlineCSS(appCSS),
div(
id = "loading_page",
dashboardHeader(),
dashboardSidebar(),
dashboardBody("Loading...")
),
hidden(
div(
id = "main_content",
header, sidebar, body
)
)
)
server = function(input, output, session) {
# Simulate work being done for 4 second
Sys.sleep(4)
hide("loading_page")
show("main_content")
}
shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)
试试这个库 shinycssloaders
library(shiny)
library(shinycssloaders)
library(highcharter)
ui <- fluidPage(
mainPanel(
plotOutput("my_plot") %>% withSpinner(color="#0dc5c1")
)
)
server <- function(input, output){
output$my_plot <- renderPlot({
Sys.sleep(1)
plot(mtcars)})
}
shinyApp(ui, server)
Run Code Online (Sandbox Code Playgroud)