Aller au contenu

Résolveur de source map

Source Map Resolver

Ramène une trace d’appels minifiée à ses fichiers et ses lignes d’origine à l’aide de la source map que vous fournissez.

Prend une trace d'appels venue d'un bundle minifié et un fichier `.map`, et vous dit de quelle ligne de quel fichier source d'origine vient chaque frame. Tout est décodé dans l'onglet — ni la map ni la trace, qui nomme souvent vos chemins internes, ne va où que ce soit.

🔒 Fonctionne entièrement dans votre navigateursourcemapdebugstacktracejavascript

Source map (.map)

Déposez un fichier .map

Lu dans cet onglet. Rien n’est envoyé.

Trace minifiée

Source Map v3, décodé dans cet onglet : mappings base64-VLQ, recherche de la plus grande colonne précédente comme dans les devtools, et noms d’origine rétablis depuis la table names. Le code source d’origine n’apparaît que si la map embarque sourcesContent — une map sans cela connaît les positions, pas le code. Les lignes de frame qui ne se lisent pas passent telles quelles.

Comment s’en servir

  1. Procurez-vous la source map

    Soit le fichier `.map` lui-même, soit l'URI `data:` du commentaire `sourceMappingURL` en bas du bundle. Les deux se collent ici.

  2. Collez la trace d'appels

    Directement issue d'un rapport d'erreur — le tout, ligne `Error:` comprise. Les frames qui ne s'analysent pas passent tels quels au lieu de disparaître.

  3. Lisez les positions d'origine

    Chaque frame reçoit son fichier source, sa ligne, sa colonne et — là où la table `names` de la map l'a — le nom de fonction d'origine. Copiez toute la trace remappée d'un seul bouton.

Questions fréquentes

Pourquoi aucune ligne de source n'est-elle affichée ?

Parce que la source map n'embarque pas `sourcesContent`. Une map qui en est dépourvue sait où les choses étaient, pas ce qui y était écrit — la statistique sous la source map dit si la vôtre l'a. Compilez avec `sourcemap: true` plutôt qu'avec un réglage limité aux chemins si vous voulez le code.

Un frame dit « aucune correspondance à cette position ».

La colonne de ce frame tombe en dehors de tout segment de correspondance. Cela veut en général dire que la source map correspond à une autre compilation du fichier que celle qui a levé l'erreur — un déploiement qui a livré du code neuf avec une vieille source map, ou un CDN qui sert un bundle en cache.

Est-il sans risque de coller ici une source map de production ?

Rien ne quitte l'onglet — le décodage VLQ et la recherche se font dans votre navigateur. Il vaut la peine de se rappeler qu'une source map avec `sourcesContent` contient tout votre code source d'origine : l'endroit où vous la collez compte en général, même si ce n'est pas le cas ici.

Quelle version de source map lit-il ?

La v3, la seule que qui que ce soit émette. Les index maps — la forme `sections` employée pour les très gros bundles — ne sont pas prises en charge ; donnez-lui plutôt la source map de section qui couvre votre frame.

À alimenter depuis

Ensuite

Ces outils acceptent ce que celui-ci produit : le résultat peut y aller directement.