Как прокомментировать код JSX в файлах .js в VSCode?

81

В отличие от webstorm, я не могу комментировать JSX-код в .jsфайлах в Visual Studio Code.

YH Eng
источник
1
Вы ищете ярлык или просто как это сделать?
erichardson30
@ erichardson30 Я бы хотел знать, как это сделать! Комментирующий ярлык заключает код, выполняя «//», но, очевидно, это не сработает. Я бы хотел вместо этого сделать "/ * * /".
YH Eng
Это связано: stackoverflow.com/q/49121821/823321
sɐunıɔ ןɐ qɐp 07

Ответы:

94

Вы можете закомментировать JSX до {/ ** /}

Пример :

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

а затем Component2 будет закомментирован

erichardson30
источник
8
Да, но есть ли способ сделать это с помощью сочетания клавиш Cmd + / shortcut?
YH Eng
Я искал вокруг и ничего не нашел .... Я дам вам знать, когда наткнусь на что-то для быстрого доступа
erichardson30,
1
github.com/Microsoft/vscode/issues/6461 Это то, что мне удалось найти относительно проблемы
YH Eng
Да ... кажется, это постоянная проблема?
erichardson30
23

Попробуйте отключить все плагины, потому что они могут изменить поведение редактора. Например, если вы используете плагин Babel ES6 / ES7 , .jsxсинтаксис комментариев редактора //вместо {/*. Вы видите здесь проблему .

Андрей Гайдос
источник
Похоже, у меня была эта проблема, когда комментарии VS Code в JSX применялись в {/* */}течение нескольких недель, но затем перестали работать. Вчера я установил Babel ES6 / ES7, поэтому я просто попытался удалить его, и он не вернулся в нормальное состояние. Любая помощь?
Джонатан Тузман
11

В Visual Studio codeHit, Cmd + /если вы работаете на Mac или размещаете

{/* Your Code */}

Спасибо.

Тунвир Рахман Тушер
источник
Работает нормально +1.
Satheesh
1
Не работает, чего нам не хватает? Я тоже отключил все плагины.
Иордания
9

Команды клавиатуры ...

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

... теперь работают должным образом для однострочного и блочного кода, добавляя {/* */}вокруг выбранных строк.

Он был исправлен в последних сборках Visual Studio Code для инсайдеров и войдет в следующий полный выпуск.

GollyJer
источник
То же сочетание клавиш работает и в Atom (что, вероятно, неудивительно, поскольку Visual Studio Code и Atom построены на электронном языке).
Грег К.
Не могу заставить его работать в VS CODE. Вы используете какой-либо плагин, который поможет в этом?
Jordan
У меня работает без каких-либо плагинов в самой последней общей версии VS Code.
GollyJer
4

{/ * это работает, но только в одну строку * /}

Брэндон Бриганс
источник
4
Ваш ответ не отличается от уже хорошо обозначенного ответа.
HDJEMAI
2
Многострочные комментарии, использующие этот синтаксис, у меня нормально работают ( {/*только в первой строке и */}только в последней).
Джон Шнайдер
1
Определенно поддерживает многострочный комментарий
Чарльз Уотсон
4

У меня была такая же проблема, пока я не преобразовал язык файлов в Typescript React (typescriptreact).

Если вы хотите настроить это как язык для всех файлов .js, добавьте его в свой settings.json (глобально или на уровне проекта в /.vscode/settings.json).

"files.associations": {
    "*.js": "typescriptreact"
  }
5 штурмовик
источник
3

Если вы хотите прокомментировать блок синтаксиса JSX, вы можете сделать это так

{
  /* <section>
     <header><h3>Contact Form</h3></header>
     <figure>
       <Form />
     </figure>
   </section> */
}
Кьяу Кьяу Со
источник
2

Это тоже работает

{
  //this.props.user.profileImage
  //? <img
  //    src={ this.props.user.profileImage }!
  //    alt=""
  //  />
  //: <FontAwesome name='smile-o' />
}
Антонио Брандао
источник
2

В настоящее время в коде Visual Studio это можно сделать, нажав комбинацию - Shift + Alt + A и прокомментируя код "jsx", который он создает - {/ ** /} комментарии.

Содиникас
источник
2

Если мы нажмем cmd + / по умолчанию vs, код будет делать однострочные комментарии, которые нельзя применить для JSX. Просто установите указанное ниже расширение кода и все будет в порядке.

vscode-language-babel

Манзур Самад
источник
2

В React "{}" позволяет нам использовать выражения JavaScript, поэтому мы можем комментировать, как в JavaScript.

Пример:

{/* multi 
line 
comment 
*/}

{// single line comment
}
Яш П Шах
источник
2

Я потратил несколько часов на эту проблему, и самое простое решение, которое я нашел, заключается в следующем: Да, проблема связана с установкой расширения Babel ES6 / ES7, как многие заметили, и когда вы удаляете или деактивируете его, VScode восстанавливает его нормальное поведение: Ctrl + / => Переключить комментарий строки для строки или блока, выбранного с помощью //для файлов JS, JSX, ...; Shift + Alt + A => Переключить комментарий блока для строки или блока, выбранного <!-- --> в файлах HTML, между/* */ выражениями JS и между{/* */}в файлах JSX для тегов разметки в рендеринге / возврате ... Итак, если вы хотите, чтобы расширение Babel ES6 / ES7 оставалось активным и при этом сохраняло такое поведение: вы можете параметрировать свою собственную комбинацию клавиш быстрого доступа в файле keybindings.json (File / Preferences / Keyboard Shortcuts (или Ctrl + K + S), а затем щелкните маленький значок файла в правом верхнем углу для выбора Open Keyboard Shortcuts, который открывает keybindings.json), где вы используете встроенную команду VScode "editor.action.insertSnippet" следующим образом:

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

Поместите /nнужное место в выражении для разрыва линий и $0окончательное размещение курсора. Затем сохраните, и он работает прямо :) только в JS и JSX файлов Если вы хотите , чтобы указать другой язык просто заменить 'javascript'в "when"выражении на тот , который вы хотите из этого списка VScode Язык идентификаторами: https://code.visualstudio.com/docs / languages ​​/ identifiers # идентификаторы-неизвестного-языка И, конечно, если вам нужно другое поведение сниппета: просто замените в {/*выражении на то, что вы хотите "args".

CyberChris
источник
1

Для Linux: для одной строки используйте Ctrl+/ .

А для многострочного режима выберите фрагменты в VSCode. Просто нажмите Ctrl+ Shift+A .

Оно работает. Счастливое кодирование

Брэдж Бхушан Сингх
источник
0

=> Чтобы прокомментировать выделенную одну или несколько строк кода:

Для машины с Windows или Linux выберите код и используйте:

  1. Ctrl + / получить шаблон комментария //
  2. Ctrl + Shift + A чтобы получить шаблон комментария {/ * * /}

Для компьютера Mac выберите код и используйте:

  1. Cmd + / получить шаблон комментария //
  2. Cmd + Shift + A чтобы получить шаблон комментария {/ * * /}

=> Чтобы раскомментировать закомментированные строки кода: просто повторите шаг, который вы использовали для комментирования.

Ипсита Рут
источник
0

Я удаляю SUBLIME BABEL JOSH PENG, и он работает

Перед: //

После:

{/ * * /}

с React JavaScript, и он РАБОТАЕТ :-)

введите описание изображения здесь

Гело К
источник
0

По-видимому, vs code не делает комментарии автоматически с использованием ctrl + /или cmd + /на jsx, поэтому нам нужно писать {/ * текст здесь * /} вручную

РЕДАКТИРОВАТЬ: удалите расширение Babel из кода vs, и комментарии jsx начнутся ctrl + /илиcmd + /

Нибодх Давар
источник