Вопрос №55707 от пользователя Андрей Мищенко в проекте «RSS агрегатор»

Андрей Мищенко

Здравствуйте.

И в практиках, и в Webpack Boilerplate присутствует инструкция проверки соответствия стандартам TypeScript - // @ts-check. Из-за неё, например, в таком случае:

submitButton.disabled = status;

VSCode выдаёт ошибку:

Property 'disabled' does not exist on type 'Element'.ts(2339)

Нагугленные мной способы решения годятся только для ts файлов.

Что делать - убрать // @ts-check?

Или переписать код так:

if (status) {
  submitButton.setAttribute('disabled', status);
} else {
  submitButton.removeAttribute('disabled');
}

Или есть другое решение?

И сразу продолжение: как побороться с ошибкой

Property 'trim' does not exist on type 'FormDataEntryValue'. Property 'trim' does not exist on type 'File'.ts(2339)

в коде

const formData = new FormData(e.target);
const url = formData.get('url').trim();
3 0

Roman Makarov

Андрей Мищенко, @ts-check не про стандарты typescript, эта директива позволяет использовать проверку типов с помощью typescript. Воспринимайте ошибки ts как совет присмотреться к коду внимательнее, чем как указание немедленно исправить.

0

Андрей Мищенко

Первую ошибку убрал, руководствуясь этой инструкцией.

Вторую - добавив приведение к строке.

0

Roman Makarov

Андрей Мищенко, в первом случае, возможно, достаточно было использовать setAttribute вместо прямого присваивания.

0

Используйте Хекслет по максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Даю согласие на обработку персональных данных, соглашаюсь с «Политикой конфиденциальности» и «Условиями оказания услуг»

Рекомендуемые программы

С нуля до разработчика. Возвращаем деньги, если не удалось найти работу.

Иконка программы Фронтенд-разработчик
Профессия
Разработка фронтенд-компонентов веб-приложений
25 мая 10 месяцев
Иконка программы Python-разработчик
Профессия
Разработка веб-приложений на Django
25 мая 10 месяцев
Иконка программы PHP-разработчик
Профессия
Разработка веб-приложений на Laravel
25 мая 10 месяцев
Иконка программы Node.js-разработчик
Профессия
Разработка бэкенд-компонентов веб-приложений
25 мая 10 месяцев
Иконка программы Fullstack-разработчик
Профессия
Новый
Разработка фронтенд и бэкенд компонентов веб-приложений
25 мая 16 месяцев
Иконка программы Верстальщик
Профессия
Вёрстка с использованием последних стандартов CSS
в любое время 5 месяцев
Иконка программы Java-разработчик
Профессия
Разработка приложений на языке Java
25 мая 10 месяцев
Иконка программы Разработчик на Ruby on Rails
Профессия
Создает веб-приложения со скоростью света
25 мая 5 месяцев