-->

Is it possible to using Image.getSize with static

2020-02-25 07:12发布

问题:

I want to use Image.getSize (https://facebook.github.io/react-native/docs/image.html) to get the size of my image but the first argument require the image source to be in URI but I can't use URI with static file, I can only use Require.

Therefore, is it possible is to use Image.getSize on static file or do I have to find another way?

回答1:

You can use resolveAssetSource (from react-native/Libraries/Image/resolveAssetSource) to get the image's size.

import resolveAssetSource from 'resolveAssetSource';

and

let icon =  require('./assets/images/icon.png'); 
let source = resolveAssetSource(icon);
// source.width, source.height`


回答2:

You can use Image.resolveAssetSource(source).width and Image.resolveAssetSource(source).height.

Reference in React Native docs: https://facebook.github.io/react-native/docs/image.html#resolveassetsource



回答3:

Through official document

import { Image } from 'react-native'

const url = require('./x.png')
const image = Image.resolveAssetSource(url)

Then use image.width and image.height