Сохранение JS-кода в RCloud Asset Book и вызов его в Shiny
Как бы вы поместили код Java-сценария в книгу активов и назвали его блестящим кодом? возникли проблемы с тем, чтобы заставить его работать. Мне нужно найти способ получить это в книге активов в RCloud и иметь возможность вызывать его в Rcloud без необходимости ссылаться на код онлайн
#Link to JS Code I am trying to save inside Rcloud
tinymce.cachefly.net/4.0/tinymce.min.js
# Call asset to provide JS Code
tinymce.fn.source<- rcloud.get.asset ("tinymce.js", notebook = assetsNotebook) источник (textConnection (tinymce.fn.source))
Side Text Panel Code
fluidRow(
singleton(tags$head(tags$script(src ="tinymce.fn.source"))),
column(12, offset = 0,
hr(),
h4('Side Panel Text'),
uiOutput("editor1"))),
1 ответ
Я адаптировал этот пример из The Dub World:
library(rcloud.shiny)
library(shiny)
ui <- shinyUI(
fluidPage(tags$head(tags$script(src='/notebook.R/6a4819a38814bdad910e837f0c4de702/tinymce.min.js')),
# Application title
fluidRow(
titlePanel('tinyMCE Modal Example'),
br(),
actionButton('modal', 'Modal Example', icon=icon('paper-plane-o'), class='btn-success', style='margin-left:15px;',`data-toggle`='modal', `data-target`='#modalExample'),
br(),br(),
tags$pre(htmlOutput('modalText')),
### Modal ###
tags$div(class='modal fade', id='modalExample', tabindex='-1', role='dialog',`aria-labelledby`='modalExample', `aria-hidden`='true',
tags$div(class='modal-dialog', role='document',
tags$div(class='modal-content',
tags$div(class='modal-header', tags$button(type='button', class='close', `data-dismiss`='modal', `aria-label`='Close', tags$span(`aria-hidden`='true', 'x')),tags$h4(class='modal-title', 'HTML Editor in a modal')),
tags$div(class='modal-body', tags$form(method='post', tags$textarea(id='modalEditor')),tags$script("tinymce.init({selector:'#modalEditor', theme: 'modern', height: 200});")),
tags$div(class='modal-footer',tags$button(type='button', class='btn btn-primary', `data-dismiss`='modal', onclick="Shiny.onInputChange('modalTextArea',tinyMCE.get('modalEditor').getContent());",'Close')))
)
)
)
)
)
server <- function(input, output, session) {
output$modalText <- renderUI({
req(input$modalTextArea)
HTML(enc2utf8(input$modalTextArea))
})
}
rcloud.shinyApp(ui=ui, server=server)
Я сохранил JS на рабочий стол, а затем загрузил его с помощью графического интерфейса загрузки файлов, отметив флажок "Загрузить в записную книжку", чтобы создать актив RCloud:
Нажмите на значок ссылки в разделе RCloud Asset, и вы увидите код JS, загруженный как блокнот. R статический актив:
Интерфейс notebook.R (веб-служба) позволяет вам вызывать статический ресурс, используя относительный путь вашей записной книжки... так что вы можете создавать функции в других записных книжках и вызывать их, например, по этому пути.