首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在javascript中将图像转换为Base64格式

问无法在javascript中将图像转换为Base64格式
EN

Stack Overflow用户
提问于 2020-07-07 21:03:11
回答 1查看 186关注 0票数 0

我是一个完全的javascript初学者,我正在使用精灵宝可梦api https://pokeapi.co/来获得精灵宝可梦图片。获得图像后,我尝试将其转换为base64格式,但出现以下错误

代码语言:javascript
复制
pokemon.js:29 Uncaught (in promise) ReferenceError: getBase64 is not defined

我在这里看过关于类似问题的其他答案,但我是一个初学者,不能很好地理解。

我的代码:

​

代码语言:javascript
复制
var pokeInfo=[];
var pokepics=[];
var pokemon;

//get a pokemon by id 
async function fetchPokemon(pokemonID){
  
    var response = await fetch('https://pokeapi.co/api/v2/pokemon/'+pokemonID.toString()+'/');
    var poke = await response.json();
    pokeInfo.push(poke);
}


//get many  pokemon 
async function fetchManyPokemon(count){

    for(var i=1;i<=count;i++){

        await fetchPokemon(count);      
    }
}

//get pokemon image 
async function fetchPokemonImage(pokemonInfo){

    var imageUrl = pokemonInfo.sprites.front_default; //select image 
    var imageResponse = await fetch(imageUrl); //fetch image
    var image = await imageResponse.blob(); // get response image
    //error is here 
    var base64 = await getBase64(image); //convert image to base 64 format 

    pokepics.push(base64);


}


async function fetchPokemonImages(){  //fetch number of pokemon images 

    for(var l =0;l<pokeInfo.length;l++){
    
        await fetchPokemonImage(pokeInfo[l]);
    }
}

​

如果您能帮助我解决这个问题,我将不胜感激。提前谢谢你。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-07 21:08:44

在js中没有getBase64(),你应该尝试这样做:

代码语言:javascript
复制
function toBase64(file) {
   var reader = new FileReader();
   reader.readAsDataURL(file);
   reader.onload = function () {
     console.log(reader.result);
   };
   reader.onerror = function (error) {
     console.log('Error: ', error);
   };
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62775932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档