Débogage Code tapuscrit avec Visual Studio

voix
67

Est-il un moyen de déboguer la source d'enregistrement dans Visual Studio (au lieu de débogage du javascript généré)?

A partir des spécifications linguistiques dactylographiée:

Tapuscrit fournit en option des cartes source, ce qui permet le débogage au niveau source.

J'attendais donc être en mesure de placer des points d'arrêt dans ts code et être en mesure de le déboguer, mais il ne fonctionne pas. Je ne trouve pas d'autres mentions de débogage dans les spécifications. Est-ce que je dois faire pour faire ce travail? Peut-être le mot « éventuellement » insinue que je dois faire quelque chose pour que cela fonctionne ... Des suggestions?

Créé 03/10/2012 à 16:32
source utilisateur
Dans d'autres langues...                            


6 réponses

voix
63

Mise à jour à partir de VS 2017:

VS2017 travaille maintenant pour déboguer directement tapuscrit dans Visual Studio, tout comme si vous le débogage c #. Voir ma réponse ci-dessous.

Réponse originale pour les versions antérieures de VS:

Vous ne pouvez pas être en mesure de déboguer dans VS, mais vous pouvez dans certains navigateurs. Aaron Powell a blogué à obtenir des points d' arrêt de travail dans Chrome Canary seulement aujourd'hui: https://www.aaron-powell.com/posts/2012-10-03-typescript-source-maps/ .

Pour résumer (très brièvement) ce que dit Aaron, vous utilisez le -sourcemapcommutateur du compilateur pour générer un *.js.mapfichier dans le même répertoire que votre source. Dans les navigateurs qui prennent en charge les cartes source (Chrome Canaries, et sans doute récente Firefox Builds, car ils sont une idée Mozilla), vous pouvez déboguer votre .tssource de tout comme vous le feriez normalement des .jsfichiers.

Le blog se termine par « Espérons que soit l'équipe Visual Studio ou IE (ou les deux) aussi obtenir des cartes source et ajouter le support pour eux aussi. » - ce qui donne à penser qu'il n'a pas encore eu lieu.

Mettre à jour:

Avec la sortie de tapuscrit 0.8.1, le débogage Source La carte est également disponible dans Visual Studio:

http://blogs.msdn.com/b/typescript/archive/2012/11/15/announcing-typescript-0-8-1.aspx

De l'annonce:

Debugging Tapuscrit prend désormais en charge le débogage au niveau source! Le format de carte source a gagné en popularité comme un moyen de langues de débogage qui se traduisent par JavaScript et est pris en charge par une variété de navigateurs et d'outils. Avec la version 0.8.1, le compilateur dactylographiée supporte officiellement les cartes source. De plus, la nouvelle version dactylographiée pour Visual Studio 2012 prend en charge le débogage en utilisant le format carte source. De la ligne de commande, nous maintenant appuyons pleinement l'utilisation du drapeau --sourcemap, qui délivre en sortie un fichier carte source correspondant à la sortie JavaScript. Ce fichier permet le débogage directement la source dactylographiée d'origine dans les navigateurs compatibles carte source et Visual Studio. Pour activer le débogage dans Visual Studio sélectionnez « Debug » dans le menu déroulant après la création d'une application HTML avec le projet dactylographié.

Mise à jour :

WebStorm a également ajouté le support pour le débogage via SourceMaps: http://blog.jetbrains.com/webide/2013/03/webstorm-6-0-released-adds-typescript-debugging-with-source-maps-fresh-ui- et beaucoup plus/

Tout d'abord, WebStorm permet le développement web plus intelligent et plus simple avec les langues modernes, comme tapuscrit, CoffeeScript et Dart. En plus de fournir un éditeur de code de première classe pour ces langues, WebStorm 6 offres:

Compilation automatique / transpilation de ces langues de niveau supérieur dans ceux qui sont reconnus par les navigateurs sur toutes les plateformes prises en charge. débogage complet dactylographiées, Dart ou CoffeeScript avec des cartes source.

Créé 03/10/2012 à 16:34
source utilisateur

voix
14

Avec l'application VS2013 Tapuscrit, je ne devais pas changer quoi que ce soit dans le web.config. Je mets un point d'arrêt dans le fichier ts et débogués dans IE, et presto, le point d'arrêt arrêté à l'intérieur tapuscrit.

Créé 11/12/2013 à 01:46
source utilisateur

voix
3

Ceci est maintenant fixé dans VS 2017 de sorte que vous pouvez déboguer directement dans Visual Studio et dactylographiée.

Il suffit de définir votre point d'arrêt dans le dossier de votre *, et il sera frappé.

Et il déboguer dans VS, pas IE, comme si vous étiez le débogage c #.

Créé 03/12/2016 à 05:51
source utilisateur

voix
3

Debugging tapuscrit avec Visual Studio fonctionne avec les bons réglages. (Dans les versions précédentes de VS I face à des problèmes, ci-dessous est parfois comment cela fonctionne très bien avec VS 2015 CTP 6)

  1. D' abord , vous assurez - vous que vous créez des cartes source lors de la compilation tapuscrit à javascript. Donc , vous devriez avoir un fichier xxx.js.map près de tous les xxx.js.

    Obtenir des cartes source en exécutant le compilateur dactylographiée en dehors de Visual Studio ne cause aucune difficulté, à la ligne de commande tsc ajouter

    --sourcemap %1.ts
    

    votre script engouffreur généralement créer sourcemaps par défaut.

  2. Configurez votre application Web dans Visual Studio .

    Définir Internet Explorer comme navigateur de démarrage. Je l'ai eu à travailler uniquement avec IE et ne pense pas que tout autre navigateur fonctionnera.

    Dans les propriétés projet vont à l'onglet « Web » et configurer la section « débogueurs » en bas: Désactiver tous les débogueurs ! Ceci est contraire intutitive et vous pouvez voir ce message d'erreur:

    Vous avez tenté de lancer le débogueur, mais en fonction de vos paramètres de débogage en cours sur les propriétés de la page Web il n'y a pas de processus de débogage. Cela se produit lorsque l'option « Ne pas ouvrir une page. Attendez une demande d'un autre processus » est sélectionné, et le débogage ASP.NET est désactivé. S'il vous plaît vérifier vos paramètres sur les propriétés de la page Web et essayez à nouveau.

    Comme le message d'erreur indique, l'action Démarrer en haut des propriétés Web devrait être une autre option, comme « Current page ».

    Définir des points d' arrêt dans votre code ts dans Visual Studio maintenant ou plus tard.

    Appuyez sur F5

Alors que vous pouvez utiliser l'éditeur Visual Studio pour le débogage et les fichiers de modifier, « Modifier et continuer » ne fonctionne pas, il n'y a actuellement aucun navigateur qui peut recharger les fichiers js et js.map et continuer. (Corrigez-moi quelqu'un si je me trompe et je serai heureux.)

Créé 06/04/2015 à 05:52
source utilisateur

voix
2

débogage dactylographiée ne fonctionne pas pour moi du tout avec mise à jour de VS2013 3 sur une de mes machines. Après beaucoup de frustration, j'ai décidé d'essayer la mise à jour VS2013 Update 4 CTP. Enfin des points d'arrêt sont frappés dans VS!

Créé 31/10/2014 à 15:55
source utilisateur

voix
0

réponse courte: Redémarrez Visual Studio

fond: J'ai eu 2 studio visuel cas de 2015 avec deux projets différents avec tapuscrit. La première instance n'a pas commencé correctement déboguer, le second a fait. Tous les paramètres du projet étaient les mêmes. J'ai finalement remis en marche la première instance et il débogués tapuscrit (enfin).

Créé 14/02/2017 à 10:16
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more