在ReactNative中将静态图像转换为Base64

时间:2017-04-11 06:26:12

标签: android ios react-native base64 react-image

我有静态图片,我需要在Base64转换,然后将其发送到Android / iOS本机代码。

如果我从文件中选择图像,我可以将其发送到本机代码并将其转换为Base64

但是如果我有静态图像然后将其发送到本机代码怎么办。

<Image source={require('./img/icon.png')}/>

我希望在Android / iOS原生模块中发送icon.png

我做过本机编码,就像这样

@ReactMethod
public void filterBase64(String base64, Callback stringCallback) {

}

但坚持如何发送Base64

我使用

检查react-native-image-to-base64但无法获得解决方案
NativeModules.RNImageToBase64.getBase64String(uri, (err, base64) => {
    // Do something with the base64 string 
})

显示错误undefined is not an object

1 个答案:

答案 0 :(得分:1)

RNFS插件的帮助下,您可以访问React Native资产并将其转换为Base64。

var RNFS = require('react-native-fs')
base64data = await RNFS.readFile('./img/icon.png', 'base64').then();
console.log(base64data);