2012-12-23 61 views
2

我已經開始創建一個Web應用程序使用閃亮的地方,用戶輸入一個搜索字詞和包含該字詞的推文返回。停止功能開始有光澤,直到按下按鈕

當我加載此應用程序searchTwitter功能自動開始,並在主面板上有錯誤:Error: You must enter a query.

搜索項在TextInput框中輸入並有一個提交按鈕。你可以輸入一個術語,它可以正常工作,但我不希望錯誤成爲用戶看到的第一個東西。

ui.R:

library(shiny) 

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

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

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

server.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()) 
    }) 

}) 

感謝您的幫助

+0

我的問題在這裏得到解答:http://stackoverflow.com/questions/15840803 – user1414259

回答

1

這是從你的應用程序設計的邏輯要求,你應該考慮通過如何做到這一點。

一個簡單的方法是添加一個提供真/假的勾號,如果值爲FALSE,則跳過實際的twitter搜索。您可能需要緩存的rawTweets以前的值,或將其設置爲NULL,或...

0

的mainPanel(

H3(textOutput( 「搜索」)),

tableOutput( 「視圖」 ) )

嘗試沒有第二 「」