2017-06-14 8 views
0

最近、私はvennの図プロットのためにjavascriptファイルを使うためのhtmlウィジェットを書いた。 RStudioでは、アプリはうまく動作するので、光沢のあるサーバー上でアプリを使用する際に問題があることは分かりませんでした。HTMLWidget:ShinyアプリはRstudioではうまく動くが、Shiny-Serverでは動かない

RStudioのShinyでアプリを実行しても、エラーはスローされず、Webブラウザには新しいウィジェット以外のすべてのShinyページの他の要素が表示されます。ブラウザのデベロッパーコンソールを考えてみると、わたしのためには以下のようなエラーがあります。

Uncaught TypeError: Cannot read property 'filter' of undefined 
at exports.OutputBinding.shinyBinding.find (htmlwidgets.js:475) 
at a (shiny.min.js:3) 
at f (shiny.min.js:3) 
at initShiny (shiny.min.js:3) 

私はRStudioの外で実行しても、同じエラーが発生するだけです。

私はこれを2つの独立したパッケージでテストしました。私の側では系統的なエラーのようです。

ブラウザで実行中のアプリケーションを調べると、次のdivが作成されていることがわかりました。しかし、私は提出されたデータを見つけることができませんでした。

<div id="vennDia" style="width:100%; height:400px; " class="vennConductor html-widget html-widget-output"></div> 

vennConductor.js:私の意見では

HTMLWidgets.widget({ 
    name: 'vennConductor', 
    type: 'output', 

initialize: function(el, width, height) { 
    }, 
    renderValue: function(el, x, instance) { 
     // console.log(x) 
     $(el).jvenn(x)}, 
    resize: function(el, width, height, instance) { 
     $(el).attr("width", width).attr("height", height) 
    } 
}); 

「関連」HTMLWidget Rコード:

htmlwidgets::createWidget(
    name = 'vennConductor', 
    json_payload, 
    width = width, 
    height = height, 
    package = 'vennConductor', 
    elementId = elementId, 
    sizingPolicy = htmlwidgets::sizingPolicy(
     browser.fill = TRUE, 
     viewer.fill = TRUE 
    ) 
) 


#' @name vennConductor-shiny 
#' @export 
vennConductorOutput <- function(outputId, width = '100%', height = '400px'){ 
    htmlwidgets::shinyWidgetOutput(outputId, 'vennConductor', width, height, package = 'vennConductor') 
} 

#' @rdname vennConductor-shiny 
#' @export 
renderVennConductor <- function(expr, env = parent.frame(), quoted = FALSE) { 
    if (!quoted) { expr <- substitute(expr) } # force quoted 
    htmlwidgets::shinyRenderWidget(expr, vennConductorOutput, env, quoted = TRUE) 
} 

とウィジェットコール:誰でもできる

jVennConductor(elementId = 'vennDia', venn_lists = vlist_01, displayMode=T, displayStat=T) 

・ホープ私を助けてください。ありがとう!!!

P.s:Rおよびパッケージは最新であり、私のOSは、私たちは、問題の原因を発見したWINDOWS 10

答えて

0

です。 Shinyはjqueryを小文字で、jVennConductorを大文字でインポートします。これがエラーの原因です。両方とも小文字に変更するだけで問題は解決しました。ジョー・チェンへ

おかげ

https://github.com/ramnathv/htmlwidgets/issues/253

関連する問題