シャイニーモーダルでhandsontableが正しくレンダリングされない

thothal

問題

私のコードでは、rhandsontableを表示したいと思いmodalます。モーダルを最初に表示したとき、テーブルは適切にレンダリングされています。ただし、モーダルを閉じて(基になるデータを変更せずに)再度開くと、テーブルの一部しか表示されません。テーブルをクリックして初めて、正しくレンダリングされます。モーダルを再度開く前にデータが変更された場合、テーブルは再び適切にレンダリングされます。

質問

どうすればそれを回避できますか?回避策としてjavascriptを強制的handsontableに再レンダリングするために呼び出すことができるルーチンはありますか?

Reprex

library(shiny)
library(rhandsontable)

ui <- fluidPage(actionButton("show", "show"), 
                actionButton("change", "Change"))

server <- function(input, output, session) {
  dat <- reactiveVal(data.frame(x = runif(2), 
                                y = runif(2)))

  observeEvent(input$show, {
    showModal(modalDialog(rHandsontableOutput("hot")))
  })

  observeEvent(input$change, dat(data.frame(x = runif(2), 
                                            y = runif(2))))

  output$hot <- renderRHandsontable(rhandsontable(dat()))
}

エラーを再現する方法

  1. モーダルを開いて閉じます
  2. モーダルを再度開くと、正しくレンダリングされていないことがわかります。
  3. もう一度閉じてデータを更新します
  4. モーダルを再度開き、正しくレンダリングされることを確認します

スクリーンショット

適切にレンダリングされたhandsontable handsontableが適切にレンダリングされない

環境

R version 3.5.0 (2018-04-23)
Platform: i386-w64-mingw32/i386 (32-bit)
Running under: Windows 7 (build 7601) Service Pack 1

Matrix products: default

locale:
[1] LC_COLLATE=German_Germany.1252  LC_CTYPE=German_Germany.1252   
[3] LC_MONETARY=German_Germany.1252 LC_NUMERIC=C                   
[5] LC_TIME=German_Germany.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] shiny_1.1.0         rhandsontable_0.3.6

loaded via a namespace (and not attached):
 [1] Rcpp_0.12.17    digest_0.6.15   later_0.7.2     mime_0.5       
 [5] R6_2.2.2        xtable_1.8-2    jsonlite_1.5    magrittr_1.5   
 [9] rlang_0.2.1     promises_1.0.1  tools_3.5.0     htmlwidgets_1.2
[13] httpuv_1.4.3    yaml_2.1.19     compiler_3.5.0  htmltools_0.3.6

ブラウザでテスト済み:Chromeバージョン69.0.3497.100、IE 11

JLim

最もエレガントなソリューションではありませんが、これは機能します。

library(shiny)
library(rhandsontable)

ui <- fluidPage(actionButton("show", "show"), 
                actionButton("change", "Change"))

server <- function(input, output, session) {
  dat <- reactiveVal(data.frame(x = runif(2), 
                                y = runif(2)))

  dat1 <- reactive({
    if(is.null(input$hot)){
      dat()
    } else {
      as.data.frame(hot_to_r(input$hot))
    }
  })

  observeEvent(input$show, {
    showModal(modalDialog(rHandsontableOutput("hot")))
  })

  observeEvent(input$change, 
               dat(data.frame(x = runif(2), y = runif(2))))

  output$hot <- renderRHandsontable(rhandsontable(dat1()))

}

shinyApp(ui,server)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

RailsAJAXパーシャルが正しくレンダリングされない

分類Dev

シェーダーでテクスチャが正しくレンダリングされない

分類Dev

フォームがモーダルで正しくレンダリングされない

分類Dev

スライドショー/カルーセルコンテナでCanvasJSチャートが正しくレンダリングされない

分類Dev

SceneKitでシーンが正しくレンダリングされない

分類Dev

MVCパーシャルビューがメインビューで正しくレンダリングされない

分類Dev

LeafLet マップがモーダルで正しくレンダリングされない

分類Dev

ハイチャートが本番サーバーで正しくレンダリングされない

分類Dev

Googleチャートが正しくレンダリングされない-ReactJS

分類Dev

チャートが正しくレンダリングされない

分類Dev

2番目のモニターがNVidiaドライバーで正しくレンダリングされない

分類Dev

2番目のモニターがNVidiaドライバーで正しくレンダリングされない

分類Dev

kableテーブルがWebサイトで正しくレンダリングされない

分類Dev

glPolygonModeが正しいモードでレンダリングされない

分類Dev

React:動的ルートが正しく再レンダリングされない

分類Dev

ルートパスが正しくレンダリングされない

分類Dev

HTMLテーブルが正しくレンダリングされない

分類Dev

IE10で背景のグラデーションが正しくレンダリングされない

分類Dev

JavaSwingアプリケーションがVNCで正しくレンダリングされない

分類Dev

JavaSwingアプリケーションがVNCで正しくレンダリングされない

分類Dev

チャートのY軸がBillboard.jsで正しく再レンダリングされない

分類Dev

Wordpressヘッダーがモバイル向けに正しくスケーリングされていない

分類Dev

ズームコントロールがマップ上で正しくレンダリングされない

分類Dev

スプライトシートを使用して画像が正しくレンダリングされない

分類Dev

ブートストラップ入力グループがjQueryUIダイアログ内で正しくレンダリングされない

分類Dev

ブートストラップ入力グループがjQueryUIダイアログ内で正しくレンダリングされない

分類Dev

画面のサイズ変更(および予期しない動作)でサブメニューが正しくレンダリングされない

分類Dev

YUIダイアログ/パネルがIEiframeで正しくレンダリングされない

分類Dev

PDF生成で正しくレンダリングされない剣道UIチャートシリーズのラベル

Related 関連記事

  1. 1

    RailsAJAXパーシャルが正しくレンダリングされない

  2. 2

    シェーダーでテクスチャが正しくレンダリングされない

  3. 3

    フォームがモーダルで正しくレンダリングされない

  4. 4

    スライドショー/カルーセルコンテナでCanvasJSチャートが正しくレンダリングされない

  5. 5

    SceneKitでシーンが正しくレンダリングされない

  6. 6

    MVCパーシャルビューがメインビューで正しくレンダリングされない

  7. 7

    LeafLet マップがモーダルで正しくレンダリングされない

  8. 8

    ハイチャートが本番サーバーで正しくレンダリングされない

  9. 9

    Googleチャートが正しくレンダリングされない-ReactJS

  10. 10

    チャートが正しくレンダリングされない

  11. 11

    2番目のモニターがNVidiaドライバーで正しくレンダリングされない

  12. 12

    2番目のモニターがNVidiaドライバーで正しくレンダリングされない

  13. 13

    kableテーブルがWebサイトで正しくレンダリングされない

  14. 14

    glPolygonModeが正しいモードでレンダリングされない

  15. 15

    React:動的ルートが正しく再レンダリングされない

  16. 16

    ルートパスが正しくレンダリングされない

  17. 17

    HTMLテーブルが正しくレンダリングされない

  18. 18

    IE10で背景のグラデーションが正しくレンダリングされない

  19. 19

    JavaSwingアプリケーションがVNCで正しくレンダリングされない

  20. 20

    JavaSwingアプリケーションがVNCで正しくレンダリングされない

  21. 21

    チャートのY軸がBillboard.jsで正しく再レンダリングされない

  22. 22

    Wordpressヘッダーがモバイル向けに正しくスケーリングされていない

  23. 23

    ズームコントロールがマップ上で正しくレンダリングされない

  24. 24

    スプライトシートを使用して画像が正しくレンダリングされない

  25. 25

    ブートストラップ入力グループがjQueryUIダイアログ内で正しくレンダリングされない

  26. 26

    ブートストラップ入力グループがjQueryUIダイアログ内で正しくレンダリングされない

  27. 27

    画面のサイズ変更(および予期しない動作)でサブメニューが正しくレンダリングされない

  28. 28

    YUIダイアログ/パネルがIEiframeで正しくレンダリングされない

  29. 29

    PDF生成で正しくレンダリングされない剣道UIチャートシリーズのラベル

ホットタグ

アーカイブ