Не удается получить URL-адрес изображения из этой функции asyn c - PullRequest
0 голосов
/ 28 апреля 2020

Я пытаюсь получить URL-адрес изображения из itunes. Это код:

interface SongProps {
  data: {
    name: string;
    artist: string;
    album: string;
    at: string;
  };
}

const ITUNES_ENDPOINT =
  "https://itunes.apple.com/search?limit=1&&media=music&limit=1&term=";
async function artWork(name:string, artist:string): Promise<string | null> {
  return new Promise((resolve) => {
    if (name.length === 0) {
      resolve(null);
      return
    }
    const searchTerm = `${artist} ${name ? name : artist}`;
    fetch(`${ITUNES_ENDPOINT}${encodeURI(searchTerm)}`)
      .then((response) => response.json())
      .then((data) => {
        if (data.results.length > 0) {
          const res = data.results[0];
          resolve(res.artworkUrl100.replace("100x100", "600x600"));
        }
        resolve(null)
        return null
      })
      .catch((e) => console.error("Critical failure: " + e.message));
  });
}

const src = (props:SongProps)=>{
  return [
  artWork(props.data.name,props.data.artist)
]
};
const FinalImg = (props:{src:string | number})=>{
  console.log(src)
  return (
              <View style={styles.albumArtContainer}>
              <Image source={src} style={styles.albumArt} />
            </View>
  )
}

и мой результат в src выкрик src= "https://is4-ssl.mzstatic.com/image/thumb/Music30/v4/a0/08/ee/a008eecc-f4e8-4eec-e293-95aed1673a54/source/100x100bb.jpg"; Я не получил ошибок.
Любой совет?
PS: я новичок ie в ц

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...