#typescript #vue.js #eslint
Вопрос:
У меня есть проект Vue2, который я медленно конвертирую в машинописный текст. Мой первый этап-просмотреть файлы .js, переименовать их в .ts и убедиться, что они соответствуют правилам компоновки.
Проблема в том, что когда я запускаю сборку, она собирает все файлы .vue (а также файлы .js) и выдает множество ошибок компоновки.
Как я могу предотвратить вставку файлов, отличных от файлов .ts?
К вашему сведению — я попытался создать совершенно новый проект vue cli и скопировать разделы eslintrc, tsconfig и соответствующий package.json в свой проект. Однако это не решает проблему. Я также попытался настроить раздел «включить» файла tsconfig так, чтобы он указывал только на один мой файл .ts, который является голым (не имеет импорта и просто экспортирует строку). Однако, когда я делаю сборку, она все еще жалуется на каждый файл .vue, . js и т. Д.
Я не уверен, связано ли это с чем-то или это отдельный вопрос, но после того, как эта проблема будет решена и я преобразовал все файлы .js в .ts, мне нужно будет начать с файлов .vue. Это означало бы, что мне нужно будет нацеливаться только на файлы .vue с тегами script lang=ts.
Ответ №1:
Указанные параметры vue-cli-service lint
передаются в ESLint, поэтому вы можете передать --ext
возможность указать, какие расширения файлов будут использоваться в lint.
Например, этот lint
сценарий NPM связывает только .ts
файлы в ./src
папке и ее подкаталогах:
// package.json
{
"scripts": {
"lint": "vue-cli-service lint ./src --ext .ts"
}
}
В качестве альтернативы вы можете запустить это непосредственно из командной строки, а yarn
также передать аргументы базовому сценарию NPM:
yarn lint ./src --ext .ts
Комментарии:
1. Привет, спасибо за информацию. Можно ли в этом сценарии использовать несколько линтеров, например линтер ts для ts и обычный линтер для js? Кроме того, можно ли будет использовать это для анализа файлов vue и применения ts при наличии тега script=ts? Спасибо!