Можно ли запретить список слов с помощью ESlint или чего-либо еще при предварительной фиксации?

Я использую лайку, чтобы справиться с вещами перед коммитом.

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

Я знаю, что есть правило no-danger в eslint-plugin-реагировать, но это только предотвращает это одно слово. Как я могу написать список слов в файле и использовать его в качестве фильтра?

2 ответа

Решение

Так что я наконец-то решил эту проблему сам.

Решение заключается в том, чтобы воспользоваться git hook и precommit, который является одним из тех.

Хороший ресурс для достижения этого здесь:

Pre-commit Git Hook, который предотвращает коммиты с нежелательными словами

И с Husky, который называется "Git Hooks Made Easy", мы сначала пишем скрипт, который в точности соответствует тому, что было показано в блоге выше. Тогда мы можем добавить сам крюк в script из package.json, который выглядит так:

"script": {
  "precommit": "./pre-commit.sh"
}

Это означает, что каждый раз, когда вы совершаете pre-commit скрипт будет запущен первым. И, таким образом, вы можете отфильтровать слова, которые нежелательны.

Это возможно. Вы должны быть в состоянии написать новое правило Eslint, которое принимает массив запрещенных слов, а затем запускаете Eslint в сценарии предварительной фиксации. Я сделал это с помощью скрипта git pre-commit (не уверен насчет хаски, извините). Для начала я бы посмотрел на eslint-plugin-jasmine. Правило несфокусированного теста устанавливает список запрещенных слов (ddescribe, iit, fdescribe и fit) и проверяет код для этих слов. Вы можете сделать то же самое, но изменить запрещенный массив, чтобы он содержал слова, которые вы хотите запретить.

Другие вопросы по тегам