J'ai un projet ASP.NET Core qui utilise TypeScript.
Est-il possible de déboguer du code TypeScript dans Visual Studio?
Dans les versions précédentes de Visual Studio, cela n'était pas possible.
Dans Visual Studio 2017, toutefois, cela a été corrigé. Il vous suffit de définir votre point d'arrêt et d'exécuter votre projet à l'aide de IE (ou de Chrome). Votre point d'arrêt sera atteint dans votre fichier ts et vous pourrez parcourir le code dans l'environnement VS (pas dans la fenêtre de débogage du code du navigateur). C'est un énorme pas en avant pour le développement de TypeScript.
Ce qui est intéressant, c’est que le code passera à js s’il passe à un autre fichier pour lequel il n’ya pas de fichier ts correspondant, puis repasse à ts quand c’est possible.
J'essayais de convertir le modèle ReactRedux de dotnetcore en TypeScript et je n'ai pas pu obtenir de points d'arrêt pour atteindre mes fichiers TypeScript.
J'ai pu déterminer que, dans votre fichier tsconfig.json
, vous devez définir les options inlineSourceMap:true
et inlineSources:true
.
Le débogage de JavaScript et de TypeScript est très facilement possible avec le protocole Microsoft Edge DevTools , devenu disponible avec la mise à jour Windows 10 du mois d'avril 2018 (version 1803) . Vous devez également disposer de Visual Studio 2017 version 15.7 ou ultérieure.
Auparavant, j'avais beaucoup de problèmes à exécuter le débogage JavaScript, mais avec ces mises à jour, cela fonctionne simplement:
Remarque: lors de l'utilisation d'Edge, il apparaîtra que le serveur d'outils de développement a été démarré:
J'ai trouvé deux conditions qui ne se briseront pas dans Visual Studio 2017 (version 15.9.5).
1) .UseContentRoot
Dans la méthode WebHost.CreateDefaultBuilder dans Program.cs, si vous modifiez l'itinéraire du contenu à l'aide de UseContentRoot (), VS ne se cassera pas.
2) dossier wwwroot
Vous pouvez changer la racine Web par UseWebRoot (), cela fonctionne correctement.
Mais si vous supprimez le dossier "wwwroot" à la racine du projet, VS ne se cassera pas.