簡體   English   中英

未使用語音輸入更新搜索文本區域

[英]Search text area not updated using voice input

目前,我正在使用基於cordova的語音識別進行搜索。

HTML代碼:

<div class="bar bar-header item-input-inset">
    <label class="item-input-wrapper">
    <i class="icon ion-ios-search placeholder-icon"></i>
    <input type="search"  ng-model="search" id="in" placeholder="Search">
    </label>
    <button class="button button-small" ng-click = "recognizeSpeechSearch()">
    <i class="icon ion-mic-a"></i>
    </button>
  </div>

JavaScript代碼:

$scope.recognizeSpeechSearch = function(){
            var maxMatches = 1;
            var promptString = "Speak now"; // optional
            var language = "ms-MY";                     // optional

            window.plugins.speechrecognizer.startRecognize(function(result){
                alert(result);
                    $scope.search = result;

            }, function(errorMessage){
                console.log("Error message: " + errorMessage);
            }, maxMatches, promptString, language);
        }

當我通過語音插入輸入時,它不會在我的搜索文本區域上更新並執行搜索過濾器。 有人可以協助我解決這個問題嗎? 謝謝。

回調在angular的范圍之外執行。 您需要使用$ apply():

    window.plugins.speechrecognizer.startRecognize(function(result){
$scope.$apply(fuction() {
    alert(result); $scope.search = result;}) 
;}, function(errorMessage){ 
console.log("Error message: " + errorMessage); }, maxMatches, promptString, language);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM