首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用户定义的javascript解析错误?

用户定义的javascript解析错误?
EN

Stack Overflow用户
提问于 2014-04-06 21:54:37
回答 1查看 183关注 0票数 2

根据我收集的信息,如果我想在我的闪亮应用程序中包含一些javascript,我做的事情如下:

代码语言:javascript
运行
复制
shinyUI(
    fluidPage(
        tags$head(
            tags$script("if (1 > 0) {1}")
        )
    )
)

但是,这会在我的浏览器中导致一个错误,因为如果您做了一个“视图源”,您会看到由闪亮生成的实际javascript是:

代码语言:javascript
运行
复制
<script>if (1 &gt; 0) {1}</script>

>似乎被错误地转换为&gt;。现在,这是因为我没有以正确的方式以闪亮的方式包含javascript,还是因为它是一个bug (或者实际上是一个特性)?更重要的是,有没有办法解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-06 21:59:57

标记函数执行HTML转义。如果不希望执行转义,则需要使用HTML函数:

代码语言:javascript
运行
复制
require(shiny)
runApp(list(
  ui = bootstrapPage(
    numericInput('n', 'Number of obs', 100),
    plotOutput('plot'),
    tags$head(
      tags$script(HTML("if (1 > 0) {1}"))
    )
  ),
  server = function(input, output) {
    output$plot <- renderPlot({ hist(runif(input$n)) })
  }
))

现在有一个includeScript函数,如果您的脚本在一个文件中,它将为您包装HTML函数和标记等。关键部分是tags$script(HTML(paste(lines, collapse = "\r\n"),这基本上就是您在这里所做的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22900505

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档