Punctele cheie
- 01Formatează interogări, mutații, abonamente și scheme SDL folosind parser-ul oficial graphql.js.
- 02Valideaza sintaxa și raportează linii și coloane exacte pentru erori — nu este necesară nicio schemă.
- 03Comentariile GraphQL (#) sunt îndepărtate la formatare; folosește șiruri de descriere pentru documentație pe care o dorești să o păstrezi.
- 04Rulează în întregime în browserul tău — interogări API interne și scheme proprietare rămân private.
De Ce Formatezi Documente GraphQL?
Interogările GraphQL pot deveni complexe rapid — fragmente imbricate, variabile inline, mai multe definiții de operații și definiții de tip SDL cu interfețe și directive. Formatarea consecventă face revizuirea peer mai rapidă și ușoară de detectat acolade de închidere lipsă sau nepotriviri de argumente dintr-o privire.
Formatorul folosește parser-ul de referință graphql.js — același parser pe care îl expediază specificația GraphQL. Ceea ce înseamnă că formatarea canonică pe care o obții aici se potrivește cu ceea ce produce plugin-ul GraphQL Prettier și majoritatea tooling-ului GraphQL. Orice care parsează curat aici va parsa curat în Apollo, Relay și graphql-request.
Cum să Formatezi un Document GraphQL
- 01
Lipește GraphQL-ul tău
Lipește o interogare, mutație, abonament, fragment sau definiție de schemă SDL în panoul de intrare.
- 02
Dă clic pe Format
Parser-ul emite documentul cu indentare canonică — indent de două spații, un câmp per linie, aliniere de argument consecventă. Rezultatul apare în panoul de ieșire.
- 03
Valideaza opțional
Dă clic pe Valideaza pentru a confirma că documentul parsează fără a produce o ieșire formatată. Rezultatul este o confirmare sau o listă de erori de sintaxă cu numere de linie și coloană.
- 04
Copiază rezultatul
Dă clic pe Copiere pentru a prelua documentul formatat. Lipește-l în baza de cod, o descriere PR sau un fișier de documentație.
Sigur pentru Scheme Interne și Interogări API
Parser-ul graphql.js rulează în întregime în browserul tău. Nu se trimite text de operație sau definiție de schemă la niciun server. Ceea ce îl face sigur să formatezi interogări care fac referire la nume de câmp private sau sisteme de tip interne pe care nu le dorești expuse instrumentelor de terți.
Validarea aici este doar sintactică — instrumentul verifică că documentul este un document GraphQL valid, dar nu verifică dacă numele de câmp există într-o schemă reală, dacă variabilele se potrivesc cu tipurile de argument sau dacă directivele sunt aplicate corect. Validarea aware de schemă necesită ca schema țintă să fie încărcată alături de document.
FAQ Formatter GraphQL
Valideaza formatarea GraphQL împotriva unei scheme?
Nu — doar validare de sintaxă. Verificarea dacă câmpurile și argumentele există necesită schema țintă. Acest instrument confirmă că documentul este un document GraphQL valid, nimic mai mult.
Vor fi păstrate comentariile din GraphQL-ul meu?
Nu. Liniile care încep cu # sunt îndepărtate de parser. Folosește șiruri de descriere cu citate triple pentru documentația care ar trebui să supraviețuiască formatării.
Ce versiune a specificației GraphQL este acceptată?
Specificația din octombrie 2021, inclusiv OneOf input objects și directiva @specifiedBy.
Pot formata definiții de schemă SDL, nu doar documente de operație?
Da. Definiții de tip, declarații de interfață, tipuri de uniune, enum-uri, directive și descrieri toate fac round-trip corect prin formatorul.
Se încarcă interogarea sau schema pe undeva?
Nu. Parser-ul graphql.js rulează în întregime în browserul tău — nimic nu-și părăsește dispozitivul.