web-dev-qa-db-fra.com

Comment déboguer le code TypeScript dans VS 2017?

J'ai un projet ASP.NET Core qui utilise TypeScript.

Est-il possible de déboguer du code TypeScript dans Visual Studio?

11
Greg Gum

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.

6
Greg Gum

Assurez-vous d’activer le lien de navigateur afin de voir les points de rupture TS touchés. L'option est le cercle de flèche bleue à droite du menu déroulant de sélection du navigateur dans VS2017 et il semble être désactivé par défaut.

 enter image description here

6
Andy M

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.

1
NA Slacker

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:

  • Je viens de commencer à déboguer votre projet ASP.NET
  • Définir un point d'arrêt dans vos fichiers TypesScript (ou JavaScript)
  • Si le débogage JS n'est pas activé, une fenêtre de message apparaîtra suggérant de l'activer. Ce paramètre peut également être trouvé dans les options du VS (recherchez "debug" pour trouver rapidement): Outils> Options> Débogage> Général> Activer le débogage JavaScript pour ASP.NET (Chrome, Edge et IE)
  • Aucun redémarrage requis. Les points d'arrêt sont touchés immédiatement.

Remarque: lors de l'utilisation d'Edge, il apparaîtra que le serveur d'outils de développement a été démarré:

enter image description here

0
Jack Miller

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.

0
ume05rw