javascript रिएक्ट-नेटालियल-ब्लॉब वाला छवि पॉप्युलेट करें जिसे यूआरएल में बदल दिया गया है




android-emulator react-native (3)

उपाय

प्रतिक्रिया-मूल blobs का समर्थन नहीं करता [रेफरी: जीआईटी / प्रतिक्रिया-मूल ] इस काम को पाने के लिए मुझे प्रतिक्रिया-देशी-फेच-ब्लॉब डाउनलोड करना पड़ा जो एक बेस 64 स्ट्रिंग देता है।

फ़ंक्शन जो बेस 64 स्ट्रिंग देता है:

var RNFetchBlob = require('react-native-fetch-blob').default;

getImageAttachment: function(uri_attachment, mimetype_attachment) {

  return new Promise((RESOLVE, REJECT) => {

    // Fetch attachment
    RNFetchBlob.fetch('GET', config.apiRoot+'/app/'+uri_attachment)
      .then((response) => {

        let base64Str = response.data;
        var imageBase64 = 'data:'+mimetype_attachment+';base64,'+base64Str;
        // Return base64 image
        RESOLVE(imageBase64)
     })

   }).catch((error) => {
   // error handling
   console.log("Error: ", error)
 });
},

बेस 64 के साथ छवि पॉप्युलेट करें
फिर मैं छवि को आबाद करता हूँ, जिस पर वापस लौट आए बेस 64 इमेज:

<Image source={{uri: imageBase64}} style={styles.image} />

मैं एक छवि को यूरी के साथ पॉप्युलेट करना चाहता हूं।
मैं सर्वर से छवि का अनुरोध करता हूं और यह एक ब्लॉब देता है।

ब्लॉब को कंसोल में प्रदर्शित होने पर:

मैं फिर BLOB को निम्न पंक्ति के साथ यूआरएल में परिवर्तित करता हूं:

var blobUrl = URL.createObjectURL(blob);  

blobUrl को कंसोल में प्रदर्शित होने पर

मैं फिर यूआरएल के साथ छवि को आज़माकर रखता हूं:

<Image source={{uri: blobURL}} style={{width: 100, height: 50}} />

छवि प्रदर्शित नहीं होगी मुझे क्या करना चाहिए?

मैं एंड्रॉइड एमुलेटर का उपयोग कर रहा हूं जो स्थानीयहोस्ट से जुड़ा हुआ है। हो सकता है कि संभवतः ब्लॉब यूआरएल को लोकलहोस्ट में संग्रहीत किया जा सके।

या यह एक सरल सिंटैक्स त्रुटि हो सकती है?

धन्यवाद।



ब्लॉब प्राप्त करने के बाद:

let imageUri = "data:image/png;base64," + blob;

<Image source={{uri: userImage, scale: 1}} style={{height: 30, width: 30}}/>




react-native-android