[英]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.