質問編集履歴

1

完全ではないが自己解決出来た方法を追記

2019/11/08 11:43

投稿

miyaken912
miyaken912

スコア15

test CHANGED
File without changes
test CHANGED
@@ -24,6 +24,8 @@
24
24
 
25
25
  対応方法についてご教示頂きたく、どうぞ宜しくお願い致します。
26
26
 
27
+ (初心者のため、分かりにくい点もあるかと思いますが、何卒どうぞ宜しくお願い致します)
28
+
27
29
 
28
30
 
29
31
  ### 該当のソースコード
@@ -172,6 +174,32 @@
172
174
 
173
175
 
174
176
 
177
+ ### 追記
178
+
179
+ 完全な自己解決とは言えませんが、onresultの部分で以下のようにsetTimeoutを利用することで、stop()の前にstart()が実行されてしまうのを防ぐことは一応実現出来ました。
180
+
181
+ ただあくまでsetTimeoutを用いた実行時間に依存する綱渡りな処理であるため、他にもっとスマートなやり方があればぜひ教えて頂きたいです。
182
+
183
+ ```jquery
184
+
185
+ recognition.onresult = event => {
186
+
187
+ $(outputBox).val(recognizedText);
188
+
175
- ### 補足情報(FW/ツールのバージョンなど)
189
+ if (event.results[0].isFinal) {
190
+
176
-
191
+ isListening = false;
192
+
193
+ recognition.stop();
194
+
195
+ setTimeout(function() {
196
+
177
- 初心者のため、分かりにくい点もあるかと思いますが、何卒どうぞ宜しくお願い致します。
197
+ voiceRecognizeStart(outputBox);
198
+
199
+ }, 400);
200
+
201
+ }
202
+
203
+ };
204
+
205
+ ```