web-dev-qa-db-ja.com

静的画像ファイルでImage.getSizeを使用することは可能ですか?

Image.getSize( https://facebook.github.io/react-native/docs/image.html )を使用して画像のサイズを取得したいのですが、最初の引数には画像ソースが必要ですURIにする必要がありますが、静的ファイルでURIを使用できません。使用できるのはRequireのみです。

したがって、静的ファイルでImage.getSizeを使用することは可能ですか、または別の方法を見つける必要がありますか?

16
binkpitch

使用できます resolveAssetSource ( react-native/Libraries/Image/resolveAssetSource から)イメージのサイズを取得します。

import resolveAssetSource from 'resolveAssetSource';

そして

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

Image.resolveAssetSource(source).widthおよびImage.resolveAssetSource(source).heightを使用できます。

Reactネイティブドキュメントの参照: https://facebook.github.io/react-native/docs/image.html#resolveassetsource

6
Benoît Vogel

公式ドキュメント

import { Image } from 'react-native'

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

次に、image.widthおよびimage.heightを使用します

2
duan