Задать вопрос
@fendrarog
Учу программирование.

TS2322: Type 'string | false' is not assignable to type 'string | undefined'. Type 'boolean' is not assignable to type 'string'. Как пофиксить?

Я написал код, который выделяет выбранную страницу в паджинаторе, задал условие, но тайпСкрипт не позволяет создать такой тип для className. Подскажите как пофиксить данную багу.

Вот такой код.
{pages
        .filter(
          (p) => p >= leftPortionPageNumber && p <= rightPortionPageNumber
        )
        .map((p) => {
          return (
            <span
              className={currentPage === p && s.selectedPage}
              key={p}
              onClick={() => {
                term === ""
                  ? onPageChange["onCommonPageChange"](p)
                  : onPageChange["onTermPageChange"](p);
              }}
            >
              {p}
            </span>
          );
        })}


ошибка тут
TS2322: Type 'string | false' is not assignable to type 'string | undefined'. Type 'boolean' is not assignable to type 'string'.
return (
    85 |             <span
  > 86 |               className={currentPage === p && s.selectedPage}
       |               ^^^^^^^^^
    87 |               key={p}
    88 |               onClick={() => {
    89 |                 term === ""
  • Вопрос задан
  • 795 просмотров
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 1
@Desorder
можно использовать clsx
<span className={clsx(currentPage === p && s.selectedPage)} ...>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы