2

ユーザーが検索用語を入力すると、その用語を含むツイートが返される、shiny を使用した Web アプリの作成を開始しました。

このアプリをロードすると、searchTwitter機能が自動的に開始され、メイン パネルに次のエラーが表示されます。Error: You must enter a query.

検索語は textInput ボックスに入力され、submitButton があります。用語を入力すると問題なく動作しますが、エラーがユーザーに最初に表示されることは望ましくありません。

ui.R:

library(shiny)

shinyUI(pageWithSidebar(  
  headerPanel("Twitter Generator"),

  sidebarPanel(    
    textInput("search", "Search Twitter For:", value = ""),    
    submitButton("Search")
    ),  

  mainPanel(
    h3(textOutput("search")),
    tableOutput("view"), 
    )
))

サーバー.R:

library(shiny)
library(twitteR)

shinyServer(function(input, output) {

  datasetInput <- reactive(function(){
    rawTweets <- twListToDF(searchTwitter(paste(input$search)))
    rawTweets$cleanText <- as.vector(sapply(rawTweets$text, CleanTweet))  
    rawTweets[, colnames(rawTweets) != "created"]    
  })

  output$search <- reactiveText(function() {
    input$search    
  })

  output$view <- reactiveTable(function() {   
    head(datasetInput())
  })

})

ご協力いただきありがとうございます

4

2 に答える 2

1

これは、アプリケーション設計に対する論理的な要求であり、その方法を検討する必要があります。

簡単な方法の1つは、true / falseを提供するチェックボタンを追加し、値が。の場合は実際のTwitter検索をスキップすることですFALSE。以前の値をキャッシュするrawTweetsか、NULLに設定するか、または...

于 2012-12-23T15:14:35.283 に答える