Тип undefined не может быть назначен типу DataProps - PullRequest
1 голос
/ 20 июня 2020

Я новичок в машинописном тексте с reactjs. Здесь я попытался отобразить данные, поступающие из файла данных, который выглядит примерно так, см. Ниже.

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

Здесь сценарий типа жалуется на типы, которые я добавил, но ошибка не исчезла.

Тип ошибки '{id: number; img: любой; название: строка; подзаголовок: строка; цена: номер; } | undefined »не может быть назначен типу« DataProps ». Тип undefined не может быть присвоен типу DataProps.

   interface DataProps {
      img: ImageSourcePropType;
    
      title: string;
      subtitle: string;
    }
    
        const productId = route.params.productId;
          const dataDisplay = data.find((el, index) => {
   

          if (el.id !== productId) {
      return undefined;
    } else {
      return el.id === productId;
    }
          });
        
          const { img, title, subtitle }: DataProps = dataDisplay;  <--- here typescript is complaining about 

dummydata.ts

 export const data = [
      {
        id: 1,
        img: require("../../assets/food-1.png"),
        title: "Pizza",
        subtitle: "With Beef Mushroom",
        price: 12,
      },
      {
        id: 2,
        img: require("../../assets/food-2.png"),
        title: "Pizza",
        subtitle: "With Beef Mushroom",
        price: 12,
      },
...