Ответы пользователя по тегу TypeScript
  • Как типизировать массив с вложенными элементами?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    interface Item {
     name: string; 
     link: string;
     child?: Array<Item>;
    }
    
    type Items = Array<Item>;
    Ответ написан
    Комментировать
  • Как исправить ошибку TS при получении элемента img через ref vue 3?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Потому что вы должны добавить условие, которое проверяет, что картинка существует.

    // Не пишите тут лишних типов. Юзаете картинку, оставьте только тип картинки
    const img = ref<HTMLImageElement | null>(null);


    if (img.value) {
      observer.value.observe(img.value);
    }


    Когда вы делаете ref на какой либо DOM элемент или же компонент, это не значит, что он существует в DOM дереве. TS не умеет определять, существует ли html или нет.

    P.S. Читайте ошибки, он вам там чёрным по белому пишет, что помимо картинки, может быть тип null, который у вас указан. А методу observe необходим существующий DOM элемент.
    Ответ написан
    2 комментария