2013-08-22 201 views
3

我正在轉換一個小的遺留網絡,目前使用R,RApache和PHP僅使用R和Shiny來代替。其中一個要求是使用HTML UI而不是普通的Shiny UI.R用HTML UI閃亮:

我有一個文件,其中包含一些應該在網頁中呈現的HTML文本。實際上,它被分配到<span>標籤,該標籤被分配爲ID textoIntroshiny-text-output

我可以很容易地加載該文件的內容和它server.R分配到使用下面的代碼跨度:

library(shiny) 

shinyServer(function(input, output) { 

    # loading file info 
    introFile <- 'path/file.txt' 
    textoIntro <- readChar(introFile, file.info(introFile)$size) 

    output$textoIntro <- renderText({HTML(textoIntro)}) 
}) 

但是,這樣的文字不會被瀏覽器作爲HTML考慮。相反,它顯示爲 「原始文本」:

<p>lorem ipsum </p> dolor sit amet... 

我需要它加載的HTML,像這樣:

Lorem存有悲坐阿梅德

我已經試圖使用renderPrint,但效果是一樣的。

我知道有HTML Shiny函數,但我知道它必須與tag函數結合使用,據我所知,它的目的是爲UI.R

任何人都可以告訴我如何做到這一點?非常感謝!

+0

Hi @ guillem-vicens我也遇到了這個問題。你能分享最終的工作代碼嗎?我試圖按照你的帖子,但無法得到的重點。 Salut – pacomet

+1

Hi @ guillem-vicens,無需發佈代碼。我剛剛發現了一個txt文件的路徑問題。謝謝 – pacomet

回答

6

您的<span>標籤的類應該是shiny-html-output而不是shiny-text-output

+0

這個伎倆,非常感謝! –

+0

你能解釋一下如何設置''標籤嗎? – mlegge

5

您可以嘗試使用renderUI - 這應該將其作爲HTML返回。

+0

儘管效果還是比較好的,但還沒有完全正常工作。 HTML標籤被解析,但特殊字符(如HTML中的á)未被正確解析。無論如何,+1,因爲它可能適用於其他人。 –