2017-02-14 4 views
1

コードバーバーコードスキャナを使用していますが、このようなサンプルがあります。
コメントがあるにもかかわらず、ここでsetTimeoutがなぜ必要なのかがわかりません。
ダイアログがアプリケーションを解放しないということはどういう意味ですか?タイムアウトでアラートが折り返される

cordova.plugins.barcodeScanner.scan(

    // success callback function 
    function (result) { 
     // wrapping in a timeout so the dialog doesn't free the app 
     setTimeout(function() { 
      alert("We got a barcode\n" + 
        "Result: " + result.text + "\n" + 
        "Format: " + result.format + "\n" + 
        "Cancelled: " + result.cancelled);        
     }, 0); 
    }, 

    // error callback function 
    function (error) { 
     alert("Scanning failed: " + error); 
    }, 

    // options object 
    { 
     ... 
    } 
+0

http://stackoverflow.com/questions/36108158/why-would-i-wrap-a-function-in-angularjs-timeout-service-without-a-delay-like-t – Marko

答えて

0

アラートは、確認およびプロンプトは通常のJavaScriptの一部ではない、これらのAPIは、ブラウザベンダーによって提供されており、自然の中で同期。アラート、確認、およびプロンプトがJavascriptスレッドブロックと呼ばれ、ユーザがこれらのボタンとやりとりするのを待つときは、その時点でVM全体(JavaScript実行スレッド)がブロックされ、何もしません。

関連する問題