Angular2: Web Speech API – reconnaissance vocale

Après avoir lu la documentation de webkitSpeechRecognition (reconnaissance vocale en Javascript), j'ai essayé de l'implémenter dans Angular 2 .

Mais quand j'ai fait ceci:

const recognition = new webkitSpeechRecognition(); 

TypeScript dit cette erreur:

 [ts] Cannot find name 'webkitSpeechRecognition'. any 

Et si j'essaie d'extraire webkitSpeechRecognition depuis la fenêtre :

 if ('webkitSpeechRecognition' in window) { console.log("Enters inside the condition"); // => It's printing const { webkitSpeechRecognition } = window; // => TypeScript Error const recognition = new webkitSpeechRecognition(); } 

Si je commente les deux dernières lignes, la console.log est imprimée, entre dans la condition! WebkitSpeechRecognition existe à l'intérieur de la fenêtre! Mais si ce n'est pas le commentaire des deux dernières lignes, l'erreur TypeScript est la suivante:

 [ts] Type 'Window' has no property 'webkitSpeechRecognition' and no string index signature. const webkitSpeechRecognition: any 

Comment puis-je créer une nouvelle reconnaissance dans Angular 2? Est-ce que quelqu'un l'a essayé?

Finalement, j'ai résolu la création d'une interface !

 export interface IWindow extends Window { webkitSpeechRecognition: any; } 

Et:

 const {webkitSpeechRecognition} : IWindow = <IWindow>window; const recognition = new webkitSpeechRecognition();