Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs ionic文本到语音在浏览器上不工作_Angularjs_Cordova_Ionic Framework - Fatal编程技术网

Angularjs ionic文本到语音在浏览器上不工作

Angularjs ionic文本到语音在浏览器上不工作,angularjs,cordova,ionic-framework,Angularjs,Cordova,Ionic Framework,我正在尝试在我的ionic应用程序中实现文本到语音转换,并使用cordova插件tts,并将其添加到:cordova插件添加cordova插件tts 这是我的密码: .controller('AppCtrl', function($scope) { $scope.speakText = function() { window.TTS.speak({ text: 'hello', locale: 'en-GB', rate: 1.5 }, fu

我正在尝试在我的ionic应用程序中实现文本到语音转换,并使用cordova插件tts,并将其添加到:
cordova插件添加cordova插件tts
这是我的密码:

.controller('AppCtrl', function($scope) {
$scope.speakText = function() {
   window.TTS.speak({
       text: 'hello',
       locale: 'en-GB',
       rate: 1.5
   }, function () {
       // Do Something after success
   }, function (reason) {
       // Handle the error case
   });
};

我使用
ionic serve
运行它。当我调用此函数时,控制台显示
TypeError:Cannot read属性'speak'of undefined
。我应该在controller中的
$scope
之后添加模块名或其他内容吗

是的,对于TTS来说,这是一项非常简单而重要的任务。正如你所知道的,Cordova有一个插件,我很想了解一下这个插件。要使用此插件,您必须遵循以下简单步骤:

1-添加Cordova插件

cordova plugin add https://github.com/macdonst/SpeechRecognitionPlugin
cordova plugin add cordova-plugin-tts
2-添加TTS插件

cordova plugin add https://github.com/macdonst/SpeechRecognitionPlugin
cordova plugin add cordova-plugin-tts
3-插件代码的实现

  app.controller('AppCtrl', function($scope) {
  $scope.data = {
    speechText: ''
  };
  $scope.recognizedText = '';

  $scope.speakText = function() {
    window.TTS.speak({
           text: $scope.data.speechText,
           locale: 'en-GB',
           rate: 0.7
       }, function () {
           // Do Something after success
       }, function (reason) {
           // Handle the error case
        alert(reason+"");
       });
  };

  $scope.record = function() {
    var recognition = new SpeechRecognition();
    recognition.onresult = function(event) {
        if (event.results.length > 0) {
            $scope.recognizedText = event.results[0][0].transcript;
            $scope.$apply()
        }
    };
    recognition.start();
  };
});
有关这方面的更多信息,请访问
享受您的代码时间:)

用于实现本机功能,如摄像头、tts等。我们需要在android或ios设备上运行/测试应用程序。 因此,在您的设备上构建应用程序。 首先,通过命令添加平台:爱奥尼亚cordova平台添加android

将设备连接到笔记本电脑并运行命令:cordova run android


我希望它能工作。

你能检查一下
窗口吗。TTS
对象可用。。似乎
cordova plugin tts
没有正确加载..上面写着“未定义”,如何使其可用?对不起,我是新手this@Alasry您可能需要注册deviceready事件监听器并在监听器中调用插件代码,以确保插件已完全加载。插件在浏览器中不起作用。