Jak komentować kod JSX w plikach .js w VSCode?


81

W przeciwieństwie do burzy internetowej, nie mogę komentować kodu JSX w .jsplikach w Visual Studio Code.


1
Szukasz skrótu lub po prostu jak to zrobić?
erichardson 30

@ erichardson30 Chciałbym wiedzieć, jak to zrobić! Komentarze skrótów kodują, wykonując „//”, ale oczywiście to nie zadziała. Chciałbym zamiast tego zrobić „/ * * /”.
YH Eng,

Odpowiedzi:


94

Możesz skomentować JSX przez {/ ** /}

Przykład:

render() {
  return (
    <div>
      <Component1 />
      {/* <Component2 /> */}
    </div>
  )
}

a następnie Component2 zostanie zakomentowany


8
Tak, ale czy można to zrobić za pomocą skrótu Cmd + / shortcut?
YH Eng,

Szukałem dookoła i nic nie widzę ...
Poinformuję

1
github.com/Microsoft/vscode/issues/6461 Oto, co udało mi się znaleźć w związku z problemem
YH Eng

Tak ... wydaje się, że to ciągły problem?
erichardson 30

23

Spróbuj wyłączyć wszystkie wtyczki, ponieważ mogą one zmienić zachowanie edytora. Na przykład, jeśli używasz wtyczki Babel ES6 / ES7 , .jsxskładnia komentarzy edytora przez //zamiast {/*. Widzisz problem tutaj .


Wydaje się, że miałem ten problem, w którym komentowanie VS Code w JSX było stosowane {/* */}przez kilka tygodni, ale potem przestało działać. Wczoraj zainstalowałem Babel ES6 / ES7, więc po prostu próbowałem go odinstalować i nie wróciło do normy. Jakaś pomoc?
Jonathan Tuzman


11

W Visual Studio codeHit, Cmd + /jeśli korzystasz z komputera Mac lub Place

{/* Your Code */}

Dziękuję Ci.


Działa dobrze +1.
Satheesh

1
Nie działa, czego nam brakuje? Wyłączyłem również wszystkie wtyczki.
Jordan,

9

Polecenia klawiaturowe ...

Ctrl + /- Windows i Linux
Cmd + /- MacOS

... teraz działa zgodnie z oczekiwaniami dla kodu pojedynczego i blokowego, dodając {/* */}wokół wybranych wierszy.

Zostało to naprawione w najnowszych kompilacjach programu Visual Studio Code dla niejawnych testerów i trafi do następnej pełnej wersji.


Ten sam skrót klawiaturowy działa również w Atom (prawdopodobnie nie jest to zaskakujące, ponieważ Visual Studio Code i Atom są zbudowane na elektronie).
Greg K,

Nie mogę go uruchomić w VS CODE. Czy używasz jakiejś wtyczki, która w tym pomaga?
Jordan,

Działa dla mnie bez żadnych wtyczek w najnowszej ogólnej wersji VS Code.
GollyJer

4

{/ * to działa, ale tylko w jednej linii * /}


4
Twoja odpowiedź nie różni się od już dobrze zaznaczonej odpowiedzi.
HDJEMAI

2
Komentarze wieloliniowe używające tej składni działają dobrze dla mnie (z {/*jedynymi w pierwszym wierszu i */}tylko w ostatnim wierszu).
Jon Schneider

1
Zdecydowanie obsługuje komentarz wielowierszowy
Charles Watson

4

Miałem ten sam problem, dopóki nie przekonwertowałem języka pliku na Typescript React (Typescriptreact).

Jeśli chcesz skonfigurować ten język jako język dla wszystkich plików .js, dodaj go do swojego settings.json (globalnie lub na poziomie projektu w /.vscode/settings.json).

"files.associations": {
    "*.js": "typescriptreact"
  }

3

Jeśli chcesz skomentować blok składni JSX, możesz to zrobić

{
  /* <section>
     <header><h3>Contact Form</h3></header>
     <figure>
       <Form />
     </figure>
   </section> */
}

2

To też działa

{
  //this.props.user.profileImage
  //? <img
  //    src={ this.props.user.profileImage }!
  //    alt=""
  //  />
  //: <FontAwesome name='smile-o' />
}

2

Obecnie w kodzie Visual Studio można to zrobić, naciskając kombinację - Shift + Alt + A i komentując kod „jsx”, który generuje - {/ ** /} komentarze.


2

Jeśli wciśniemy cmd + /domyślnie, vs code zrobi jednowierszowe komentarze, których nie można zastosować do JSX. Wystarczy zainstalować poniższe rozszerzenie vs code, będzie dobrze.

vscode-language-babel


2

W Reakcie „{}” pozwala nam używać wyrażeń JavaScript, dzięki czemu możemy komentować tak, jak robimy to w JavaScript.

Przykład:

{/* multi 
line 
comment 
*/}

{// single line comment
}

2

Spędziłem kilka godzin nad tym problemem, a najłatwiejsze rozwiązanie, które znalazłem, jest następujące: Tak, problem pojawia się podczas instalacji rozszerzenia Babel ES6 / ES7, jak wielu zauważyło, a po odinstalowaniu lub dezaktywacji VScode odzyskuje normalne zachowanie: Ctrl + / => Przełącz komentarz linii dla linii lub bloku wybranych //za pomocą dla plików JS, JSX, ...; Shift + Alt + A => Przełącz komentarz blokowy dla linii lub bloku zaznaczonego między <!-- --> w plikach HTML, między /* */w wyrażeniach JS i między{/* */}w plikach JSX dla znaczników w renderowaniu / powrocie ... Więc jeśli chcesz, aby rozszerzenie Babel ES6 / ES7 było aktywne i nadal mieć takie zachowanie: Możesz sparametryzować własną kombinację klawiszy skrótu i ​​przypisań w pliku keybindings.json (Plik / Preferences / Keyboard Shortcuts (lub Ctrl + K + S), a następnie kliknij małą ikonę pliku w prawym górnym rogu, aby wybrać Otwórz skróty klawiaturowe, które otwierają keybindings.json), gdzie używasz wbudowanego polecenia VScode „editor.action.insertSnippet” w następujący sposób:

[
    {
    "key": "shift+alt+a",
    "command": "editor.action.insertSnippet",
    "args": {
        "snippet": "{/*\n ${TM_SELECTED_TEXT} \n*/}$0"
    },
    "when": "editorLangId == 'javascript' && editorTextFocus && !editorReadonly"
    }
]

Umieść żądane miejsce /nw wyrażeniu do przerywania linii i w $0celu ostatecznego umieszczenia kursora. Następnie zapisz i działa prosto :) tylko w plikach JS i JSX Jeśli chcesz określić inny język, po prostu zastąp 'javascript'w "when"wyrażeniu tym, który chcesz z listy Identyfikatorów języków VScode: https://code.visualstudio.com/docs / Languages ​​/ identifiers # _known-language-identifiers I oczywiście, jeśli chcesz zachować inne zachowanie fragmentu: po prostu zastąp {/*go tym, co chcesz w "args"wyrażeniu.


1

W systemie Linux dla jednej linii użyj Ctrl+ /.

W przypadku multilinii wybierz fragmenty w VSCode Po prostu naciśnij Ctrl+ Shift+ A.

To działa. Miłego kodowania


0

=> Aby skomentować wybraną pojedynczą linię lub wiele linii kodu:

W przypadku komputera z systemem Windows lub Linux wybierz kod i użyj:

  1. Ctrl + / aby uzyskać wzór komentarza //
  2. Ctrl + Shift + A aby uzyskać wzór komentarza {/ * * /}

W przypadku komputera Mac wybierz kod i użyj:

  1. Cmd + / aby uzyskać wzór komentarza //
  2. Cmd + Shift + A aby uzyskać wzór komentarza {/ * * /}

=> Aby odkomentować skomentowaną linię (y) kodu: Po prostu powtórz krok, który użyłeś do komentowania.


0

Odinstalowuję SUBLIME BABEL JOSH PENG i działa

Być dla: //

Po:

{/ * * /}

z React JavaScript i działa :-)

wprowadź opis obrazu tutaj


0

Najwyraźniej kod vs kod nie tworzy komentarzy automatycznie przy użyciu ctrl + /lub cmd + /na jsx, więc musimy napisać {/ * tekst jest tutaj * /} ręcznie

EDYCJA: Odinstaluj rozszerzenie Babel z vs code, a komentarze jsx zaczną się w dniu ctrl + /lubcmd + /

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.