На моей HTML-странице у меня есть текстовое поле:
<textarea id="ex.note-textarea" placeholder="Create a new note by typing or using voice recognition." rows="6"></textarea>
и две кнопки для начала распознавания и окончания.
И в моем AngularJS контроллер
function exController(){
var self = this;
let finalTransScripts = '';
let speechRecognizer = new webkitSpeechRecognition();
this.startRecognition = function() {
if('webkitSpeechRecognition' in window) {
let r = document.getElementById("ex.note-textarea");
speechRecognizer.continuous = true;
speechRecognizer.interimResults = true;
speechRecognizer.lang = 'en-IN';
speechRecognizer.start();
speechRecognizer.onresult = function(e) {
let interimTransScripts = '';
for(let i = e.resultIndex; i < e.results.length; i++) {
let transScript = e.results[i][0].transcript;
transScript.replace('\n','<br>');
if(e.results[i].isFinal) {
finalTransScripts += transScript;
}else {
interimTransScripts += transScript;
}
}
r.innerHTML = finalTransScripts + interimTransScripts ;
}
speechRecognizer.onerror = function() {
}
}else {
r.innerHTML = "Your browser is not supported";
}
}
this.stopRecognition = function() {
speechRecognizer.stop();
// This is not clearing
document.getElementById("ex.note-textarea").innerHTML = '';
}
Даже если теперь после остановки я снова нажимаю кнопку start
, старый текст остается .
Что яделать неправильно?