用字符串变量取本地图片的问题,哪位达人说一下。

tennis
  • 656

这行代码是可以顺利工作的:

                <Image style={styles.thumbnail}
                       source={ require( './image/lg.jpg' ) }

这段代码:

                var tempString = './image/lg.jpg';
                ......
                <Image style={styles.thumbnail}
                      source={ require( tempString ) }                

报错说:Requiring unknown module "./image/lg.jpg". If you are sure the module is there, try restarting the packager.

这是怎么回事儿?直接写死文件名可以运行,展示图片。用个字符串变量存储文件名,就不行了......
回复
阅读 6.7k
4 个回答
✓ 已被采纳

http://facebook.github.io/react-native/docs/images.html#content

Note that in order for this to work, the image name in require has to be known statically.

// GOOD
<Image source={require('./my-icon.png')} />

// BAD
var icon = this.props.active ? 'my-icon-active' : 'my-icon-inactive';
<Image source={require('./' + icon + '.png')} />

// GOOD
var icon = this.props.active ? require('./my-icon-active.png') : require('./my-icon-inactive.png');
<Image source={icon} />
QiMENG
  • 1
新手上路,请多包涵

你可以这样子实现

            var tempString = require('./image/lg.jpg');
            ......
            <Image style={styles.thumbnail}
                  source={tempString}   
NULL
  • 2
新手上路,请多包涵

可以使用webpack 的context来实现

你知道吗?

宣传栏