Расширенный охват

Мы говорили об ограничении сниппетов определенными файлами исходного кода, но часто сниппеты имеют более детальный контекст, в котором они действительны. В качестве примера, такой метод, как componentWillUpdate, обычно имеет смысл только в рамках определения компонента (класса), которое явно выражено.

Включение meta.class.js в строку 8 означает, что сниппет действителен только в ситуациях, когда редактируемый файл исходного кода является JavaScript-файлом, а курсор находится «внутри» определения класса. Если бы вы попытались вызвать сниппет в пустом файле JavaScript, ничего бы не случилось.

Чтобы в полной мере использовать возможности scopes, вам нужно иметь некоторое представление о синтаксисе, диапазонах и селекторах областей видимости. Это нюансы, достойные отдельной статьи, поэтому я объясню их со ссылками на документацию:

  • синтаксис языка определяет, как разбивается исходный код на области применения.
  • охват — это обозначенные области текста, которые соответствуют «единицам» языка программирования, таким как определения классов или функций. Каждая позиция в файле исходного кода имеет соответствующую область видимости.
  • мета области наиболее актуальны для сниппетов кода.
  • селекторы областей «query» (запрос). Селекторы областей привязываются к действиям (таким как фрагменты или сочетания клавиш) и используются для определения того, является ли действие подходящим с учетом текущей области.

Pro подсказка

Лучший способ узнать об охватах — поиграть с ними. Переместите курсор в разные позиции внутри файла и воспользуйтесь комбинацией клавиш cmd+shift+p, чтобы вызвать всплывающее меню, отображающее соответствующий охват:

Расширенный охват

На создание сниппетов уходят считанные секунды. При этом они экономят гораздо больше времени, а не только объем кода, который нужно набрать.

Обеспечивая быстрый и воспроизводимый способ расширения содержимого, сниппеты снижают количество ошибок. Они также устраняют труднозапоминающиеся детали, такие как, например, названия методов. Всё это освобождает ваши пальцы и ваш мозг для того, чтобы сосредоточиться на том, что они хотят делать больше всего: писать отличный код.

Была ли эта страница полезной?