[解決済み] Shiny:observeEventとeventReactiveの違いは何ですか?
質問
Shinyのリアクティブプログラミングに関するドキュメントを何度か読んだのですが、以下の違いがよくわかりません。
observeEvent
と
eventReactive
.
とドキュメントに書かれています。
イベントに応答してアクションを実行したいときはいつでも、observeEventを使用してください。("recalculate a value" は一般的にアクションの実行としてカウントされないことに注意してください-それについては eventReactive を参照してください)。
....
イベントに応答してのみ更新される計算値を作成するには、eventReactiveを使用します。これは通常のリアクティブ式と同じですが、リアクティブな依存関係から生じる通常の無効化をすべて無視します。
私が試したすべての状況で、私は
observeEvent
と
eventReactive
を追加しました (私が使用する関数に関係なく、コードは問題なく動作し、パフォーマンスには明らかな影響はありません)。
この 2 つの本当の違いは何なのかを理解するのを手伝ってもらえますか?理想的には、それらが交換可能であることを示すいくつかの例が欲しいのですが、1 つは、次のような場合です。
observeEvent
は機能するが
eventReactive
は動作し、逆もまた然りです。
どのように解決するのですか?
daatali さんのおっしゃるとおり、2つの関数は異なる目的で使用されています。
ui <- shinyUI(pageWithSidebar(
headerPanel("eventReactive and observeEvent"),
sidebarPanel(
actionButton("evReactiveButton", "eventReactive"),
br(),
actionButton("obsEventButton", "observeEvent"),
br(),
actionButton("evReactiveButton2", "eventReactive2")
),
mainPanel(
verbatimTextOutput("eText"),
verbatimTextOutput("oText")
)
))
server <- shinyServer(function(input, output) {
etext <- eventReactive(input$evReactiveButton, {
runif(1)
})
observeEvent(input$obsEventButton,{
output$oText <- renderText({ runif(1) })
})
eventReactive(input$evReactiveButton2,{
print("Will not print")
output$oText <- renderText({ runif(1) })
})
output$eText <- renderText({
etext()
})
})
shinyApp(ui=ui,server=server)
eventReactive
の値に基づいて変化するリアクティブな値を作成します。
eventExpr
に基づいて変化するリアクティブな値を作成します。
observeEvent
は単に
eventExpr
関連
-
Rの警告 "条件の長さが1より大きいので、最初の要素しか使えない "に対する解決策
-
[解決済み] Rでcは何をするのですか?重複] [重複
-
[解決済み] グループ化関数(tapply、by、aggregate)と*applyファミリ
-
[解決済み] Rの代入演算子"="と"<-"の違いは何ですか?
-
[解決済み] require()とlibrary()の違いは何ですか?
-
[解決済み] リストやデータフレームの要素にアクセスするためのブラケット[ ]とダブルブラケット[[ ]]の違いについて
-
[解決済み] 空のdata.frameを作成する
-
[解決済み】R関数でオプション引数を指定する "正しい "方法
-
[解決済み] 2つの単語の最初の文字を大文字にします。
-
[解決済み] RxJavaのflatmapとswitchmapの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン